1. 程式人生 > >關於iframe與父視窗元素選取的問題

關於iframe與父視窗元素選取的問題

       在做專案的時候使用到了Iframe,可是在實現點選iframe內的元素動態改變父視窗導航欄相應條目高亮active的時候發現在iframe內Jq不能選取父容器的元素,仔細一想,確實是不應該選取到的,畢竟兩者不是同一個網頁,於是乎就尋找度娘了,在這裡總結一下解決的方法:

       關於Jq在iframe內選取父視窗的元素:

              要點就在於在普通的Jq選擇器內容後面新增一條parent.document來指示選擇器從父視窗尋找對應的元素,例如:

                       $("選擇器",parent.document).addClass("active");

       關於Jq在父視窗選擇Iframe內的元素:

              要點就在於在普通的Jq選擇器內容後面新增一條document.frames('iframe的name屬性').document來指示選擇器從相應的iframe內尋找相應的元素,例如:

                       $("選擇器",document.frames("myFrame").document).addClass("active");

       JS也是同理,在選擇父視窗元素的時候:

                         window.parent.document.getElementById("XXX");

                                 在選擇iframe內元素的時候:

                            window.frames["iframe_ID"].document.getElementById("XXX");

         對於parent,這裡有比較詳細的介紹parent介紹