我正在構建一個響應站點,並且在一個特定頁面上,我試圖讓移動設備(寬度爲480或更小)不下載特定圖像。我知道我很親密,我會告訴你爲什麼在代碼之後。使用jQuery循環訪問img src屬性
HTML:
<div class="index-section">
<p><img class="scale-with-grid" alt="" /></p>
<p><a href="#">A Letter from Person 1 <span class="triangle">▶</span></a></p>
</div>
<div class="index-section">
<p><img class="scale-with-grid" alt="" /></p>
<p><a href="">A Letter from Person 2 <span class="triangle">▶</span></a></p>
</div>
<div class="index-section">
<p><img class="scale-with-grid" alt="" /></p>
<p><a href="">A Letter from Person 3 <span class="triangle">▶</span></a></p>
</div>
<div class="index-section">
<p><img class="scale-with-grid" alt="" /></p>
<p><a href="">A Letter from Person 4 <span class="triangle">▶</span></a></p>
</div>
它基本上是4分幾乎相同的div的。而這裏的jQuery的:
$(document).ready(function() {
var imgPath = '_/img/'
var $winWidth = $(window).width();
var $indexSection = $('.index-section p img');
if ($winWidth <= 480) {
$indexSection.attr('src','');
$indexSection.css('display','none');
} else {
var imgSrc = [ "keith-index.jpg", "derek-video.jpg", "bar-chart.jpg", "honor-roll.jpg" ];
jQuery.each(imgSrc, function(value){
$indexSection.attr('src',imgPath + value);
});
}
});
我把這個頭(jQuery庫後),以便它增加了SRC作爲它的渲染HTML。這適用於iPhone(或寬度小於480px的Firefox),並且不會加載圖像,所以這很好。
問題是,當我試圖循環顯示圖像時,它大概工作,因爲Firefox的控制檯告訴我它無法加載「http://myurl.com/_/img/」 0.jpg「,它告訴我它幾乎正確連接,但是,出於某種原因,它打印的是數組的索引,而不是數值(我認爲)。
我需要的是,如果瀏覽器比480寬,打印url爲每個圖像的src
屬性(「myurl.com/_/img/keith-index.jpg」,其他三個他們各自的div),以便圖像加載,例如桌面瀏覽器。
感謝您的任何幫助。
感謝您的回覆。奇怪的行爲。在Firefox中,我第一次在那裏添加「index」,它爲每個圖像添加了數組中的最後一個值,甚至沒有加載其他值(根據Firebug)。我刷新並加載其他圖像,但繼續顯示陣列中所有圖像的最後一幅圖像。檢查出來:http://nickcox.me/dev/annual-report/index.html – nickcoxdotme
我標記正確。謝謝你的幫助。 (我也很感謝你的解釋,而不僅僅是回答!)但是,你能解釋爲什麼'索引'工作嗎?我以爲我讀錯了,並把'價值',並且工作。我會希望'index'打印0,1,2,3和'value'給我的圖像。該陣列的索引不是數字位置嗎?爲什麼我不想要這些值? – nickcoxdotme