2016-09-14 29 views
0

http://ashleydw.github.io/lightbox/引導ekkoLightbox顯示我試圖實施引導這個燈箱插件怪異charachters

這是一個文本鏈接的圖像

<a href="/img/21/1920" data-toggle="lightbox"> 
<img align="right" src="/img/21/200"> 
</a> 

顯示該圖片的HTML,如果我點擊它模態窗口出現,但模態窗口看起來不太正確。

enter image description here

如果我直接去/img/21/1920它顯示在瀏覽器,因爲它應該沒有問題,我也可以創建一個<img>標籤與SRC-URL是正確顯示出來。

所以這似乎是特定於該模式插件的東西。 當檢查poped模態的HTML時,這是顯示..並且對我來說,它似乎缺少一些東西,也許是<img>標記。但是,我找不到任何設置或其他信息是什麼,我做錯了..

enter image description here

所以。我做錯了什麼導致了這個?

編輯表明返回圖像

public ActionResult GetImageSmall(int Id, int MaxWidth = 550) 
{ 
    var file = _Context.Files.Where(x => x.Id == Id).SingleOrDefault();//.Select(s => s.ImageFile).SingleOrDefault(); 

    if (file.IsImage == false) 
     return null; 

    if (file != null) 
    { 
     FileManager fm = new FileManager(); 
     var filePath = fm.GetRealPathOfFile(file.Path); 

     if (System.IO.File.Exists(filePath)) 
     { 
      ImageHandler ih = new ImageHandler(); 
      string tempPath = ih.GetTempImagePath(file.Id, file.Extension, filePath, MaxWidth, _Context); 
      return File(tempPath, HelperMethods.GetMimeType(System.IO.Path.GetExtension(tempPath))); 
     } 
    } 
    return null; 
} 

上面的代碼從數據庫獲取所需的圖像路徑,並調整它做想要的大小,以節省帶寬的代碼。我可能會有一個3k x 3k大小的圖像,這將基於url路徑變量以更可管理的大小返回。而正如我之前寫的url可以在<img>標籤中使用或瀏覽直接沒有問題。這種方法的URL /img/{Id}/{MaxWidth}/

MIMETYPES是基於原始文件擴展名返回,如:

{".jpe", "image/jpeg"}, 
{".jpeg", "image/jpeg"}, 
{".jpg", "image/jpeg"}, 
+0

您的圖片有名字1920和200沒有擴展名?首先要嘗試的是將名稱更改爲1920.jpg和200.jpg。 – Macsupport

+0

圖像通過代碼傳遞。我添加一個編輯來顯示這個。該網址由/ img/{imageId}/{desiredWidth}組成。 – JensB

回答

0

類型paramater設置爲圖像解決了我的問題..似乎燈箱插件無法弄清楚其如果urlpath不包含擴展名(即使正在發送正確的mimetypes),則爲圖片。

<a href="/img/22/1920" data-toggle="lightbox" data-type="image"> 
<img src="/img/22/100"> 
</a>