正如標題我有在所有IE版本原型的更新功能,但它在FF工作和鍍鉻原型更新()在IE
這並不工作
var element = $('mainnav_h');
element.cleanWhitespace();
var html = element.firstChild.innerHTML;
html = html.gsub('<span class="sep"></span>', '');
element.firstChild.update(html);//this doesn't word
問題不工作但這個工程
var element = $('mainnav_h');
element.cleanWhitespace();
var html = element.firstChild.innerHTML;
html = html.gsub('<span class="sep"></span>', '');
element.firstChild.update("this works");
源
<div class="innerNavigation_horizontal clear">
<ul id="mainnav_h">
<li><span class="sep"></span><a href="#" title="#">items</a></li>
</ul></div>
,你可以清楚地看到,當我通過變量來更新()函數在IE的地方不工作,當我在傳遞字符串到它,它工作在IE瀏覽器,可有人解釋這種荒謬的行爲IE
薩爾曼
alert(typeof element.firstChild);它的一個對象,它確實存在,我只是警告(HTML),並發現gsub函數不能在IE中工作,#mainnav_h是列表中的ul id,其子項是列表項,我想要的是刪除''這來自ul im的第一個孩子的innerHTML也發帖來源 – Salman 2010-01-06 12:11:47
我也懷疑'gsub'。怎麼樣一個簡單的'replace()'而不是? http://www.w3schools.com/jsref/jsref_replace.asp請記住,您需要將您的模式作爲正則表達式提交(即轉義特殊字符)。 – 2010-01-06 12:19:46
替換(/ <[^<]+?> \ <\/span\>/g,'');我使用正則表達式,並做了建議,順便說一下,我還注意到,IE和FF有不同的方法來呈現HTML這裏是一個例子 IE將顯示這個(),而FF將顯示()請注意用雙引號括起來的類名,整個html都是小寫,一個應該關心這些差異,否則你的正則表達式可能會失敗,你不知道爲什麼它在FF中工作,而不是IE以及反之亦然 – Salman 2010-01-06 19:55:24