2011-08-01 99 views
0

這個腳本適用於所有瀏覽器,但IE7 ...append()不能在IE7中工作

概述:我有一頁產品(li.prod)。每個產品都有一個圖像(li.prod div.mainpic img)。該圖像有一個標題屬性,我正在使用該標題屬性將相同名稱的類添加到附加內容中。然後通過使用CSS自動顯示所有品牌。

$('li.prod .mainpic').each (function() { 
    var jThis = $(this); 
    var mainImages = jThis.find('img'); 

    jThis.prepend('<div class="prod-logo"></div>'); 

    var targList = jThis.find('div.prod-logo'); 

    mainImages.each(function() { 
    newClass = $(this).attr('title'); 
    targList.addClass (newClass); 
    }); 
}); 

任何人都知道適用於所有瀏覽器的解決方案嗎?

+1

我在代碼中看不到任何附加內容。除此之外,它看起來很好,但我不確定你想要完成什麼。 – GolezTrol

+0

這裏有些問題,您正在循環mainImages並在targList中設置類。 – ShankarSangoli

+0

也許是因爲你正在預先考慮而不是追加? –

回答

0

問題是不是代碼。我只需要聲明變量。

var $jThis = null; 
var $mainImages = null; 
var $newClass = null; 
var $targList = null; 

$('li.prod .mainpic').each(function() { 
var jThis = $(this); 
var mainImages = jThis.find('img'); 

jThis.append('<div class="prod-logo"></div>'); 

var targList = jThis.find('div.prod-logo'); 

mainImages.each(function() { 
    newClass = $(this).attr('title'); 
    targList.addClass(newClass); 
}); 
}); 
0

我在IE Tester的IE 7模擬器中運行這個小提琴,並沒有問題。試試看,讓我知道它是否適合你。

版本與前面加上:

http://jsfiddle.net/jensbits/aBcVX/

版本與追加:

http://jsfiddle.net/jensbits/aBcVX/2/

版本與appendTo:

http://jsfiddle.net/jensbits/aBcVX/3/

版,經後:

http://jsfiddle.net/jensbits/aBcVX/4/

+0

我得到了一個與ie7上的PC設置,並且div不附加或預先設置。 – Buildingbrick

+0

@Buildingbrick我添加了一個appendTo和一個後面的例子作爲小提琴。給他們一個嘗試。 –

+0

這些工作都沒有...一些IE DOM錯誤? – Buildingbrick