簡體   English   中英

ie和firefox中列表選擇的不同行為?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM