[英]Different behavior of list selection in ie and firefox?
<ul id='reorderps'>
<li><span><a href=''>+</a>Item 1</span></li>
<ul>
<li><span><a href=''>+</a>Sub Item 1</span></li>
</ul>
</ul>
當我嘗試執行以下操作時,我有一個像這樣的無序列表,其中包含第1級和第2級項目
jQuery('a').parent().parent().html();
即在行為上有所不同。 在IE中,它以ul以下為子級,但在mozilla中則不是。 可能是什么原因和解決方案。
我已經在IE和Firefox中進行了測試,兩者都使用相同的+項目1
您也錯過了與第一親的括號,例如,我已經測試過了
$("#reorderps").append(jQuery('a').parent().parent().html());
結果我在兩個瀏覽器中都有這個
+Item 1
+Sub Item 1
+Item 1
這是jsfiddle http://jsfiddle.net/sUxyt/1/
為什么選擇第1條?因為jQuery('a')返回數組給你,而jQuery('a')意味着jQuery('a').eq(0)
如果您想采用下一行,則必須寫一些這樣的內容
$("#reorderps").append(jQuery('a').eq(1).parent().parent().html());
在這種情況下,您必須以我的jsfiddle示例為例
+Item 1
+Sub Item 1
+Sub Item 1
編輯:
我可以根據需要更改Javascript部分
jQuery('ul#reorderps a').click(function(e){ alert(jQuery(this).parent().parent().html()); e.preventDefault(); });
是的,IE 7和其他瀏覽器有所不同。 所有需要從這里更改您的html
<ul id='reorderps'>
<li><span><a href=''>+</a>Item 1</span></li>
<ul>
<li><span><a href=''>+</a>Sub Item 1</span></li>
</ul>
</ul>
至
<ul id='reorderps'>
<li><span><a href=''>+</a>Item 1</span></li>
<li>
<ul>
<li><span><a href=''>+</a>Sub Item 1</span></li>
</ul>
</li>
</ul>
該行為的原因是IE 7無法識別li的結束標記,而將li的innerHTML增大了一點。 在第二部分添加li可解決問題:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.