2016-02-10 68 views
1

Safari現在支持<img> srcset & sizes屬性(http://caniuse.com/#search=srcset)並且在測試中起作用。<img>尺寸屬性​​在Safari中支持,但從JS img對象中缺失

如果您使用Safari訪問功能檢測庫http://featurejs.com它(錯誤地)報告sizes而不支持。因爲sizes從img對象中丟失。

如果我參觀的Safari網頁,其中有一個圖像定義是這樣的:

<img srcset="smallpic.jpg 300w, mediumpic.jpg 600w, bigpic.jpg 1000w" 
    sizes="(max-width: 600px) 100vw, 
      50vw" > 

然後在控制檯中試一下:

var img = document.querySelector('img'); 

console.log(img.srcset); // prints srcset definition 
console.log(img.sizes); // undefined 

但它在Chrome或Firefox正確地報告img.sizes

我希望能夠處理動態添加內容的大小。

有誰知道任何方式訪問該屬性?也許在Safari中會有另一個名字(一廂情願的想法)。

回答

1

這是Safari中的一個錯誤,但您可以通過直接檢索屬性值來解決此問題img.getAttribute("sizes");

+0

感謝您的支持。是的,我已經嘗試檢索這樣的屬性,它可以工作,並且你也可以用img.setAttribute()概念地設置屬性。不幸的是,它沒有效果,尺寸屬性在img元素節點上缺失,我已經斷定它是一個試圖讓它在Safari中工作的死衚衕。 – terraling