我有一個自定義日期選擇器彈出窗口,有時在IE中不工作。它適用於Chrome和Edge。IE href =「javascript:customFunction()」在第一幀加載時沒有觸發
的代碼看起來是這樣的:
<frameset>
<frame>Buttons for next/prev month/year</frame>
<frame>This is the actual calendar that gets redrawn when the above buttons are used
<a href="javascript:parent.opener.setDate(1);">1</a> //there's a different anchor tag for each day of the month
</frame>
<frameset>
所以這裏的地方變得有點奇怪。我們有兩個網絡,稱他們爲新老。舊的可能有很多無證的全球政策變化,新的可能接近政府標準。這適用於舊網絡上的任何瀏覽器,但不適用於新網絡上的IE(11)。它雖然在邊緣工作。此外,如果頂部框架按鈕用於選擇下一個/前一個月,或者只是「今日」按鈕,則所有底部幀定位鏈接均正常工作。沒有控制檯錯誤/警告,網絡監視器中沒有任何內容顯示請求返回了錯誤代碼,點擊只是不註冊。我在customFunction()中放置了一個斷點,當鏈接不工作時它不會中斷,但如果鏈接可以工作,它將會中斷。
這似乎很奇怪我的唯一的另一件事是,整個彈出的代碼看起來是這樣的:
str = "<frameset><frame name='topFrame' " +
"src='javascript:parent.opener.drawTop'></frame><frame name='bottomFrame' "+
"src='javascript:parent.opener.drawBottom'><frame</frameset>"
document.write(str);
我沒有看檢查和重繪底部框架的代碼時,上一頁/下一頁/ etc按鈕與第一次加載時調用的函數是相同的。
但是,看起來奇怪的是,在第一次加載時,DOM檢查器會顯示一切信息(頂部框架,底部框架,包括每個月的每一天的所有單獨數字等),但調試器(F12工具)不顯示用document.write(str)加載的代碼;線。爲了能夠看到代碼並設置斷點,我必須使用prev/next按鈕,然後在調試器中顯示一個額外的.html文件,該文件具有與DOM相匹配的構造HTML。
哇,沒想到會看到'
在str定義的結尾有一個結束標記是錯誤的:''。它應該是''。我不知道這是否是您的文章中的拼寫錯誤,或者它是否也出現在您的實際代碼中。 – ConnorsFan
你能提供一個鏈接來進行調試嗎? –