成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Windows 10 周年更新后的 Edge 14 的 HierarchyRequestError

Baoyuan / 2617人閱讀

摘要:在升級(jí)到周年更新后,使用系統(tǒng)自帶的瀏覽器瀏覽部分網(wǎng)站出現(xiàn)這種報(bào)錯(cuò)在網(wǎng)絡(luò)上搜索會(huì)找到同樣的案例,大致都指向使用時(shí)報(bào)錯(cuò),因此初步判定此報(bào)錯(cuò)是和節(jié)點(diǎn)操作相關(guān)。經(jīng)過一番排查,發(fā)現(xiàn)問題是出在上。

在升級(jí)到 Windows 10 周年更新后,使用系統(tǒng)自帶的 Edge 瀏覽器瀏覽部分網(wǎng)站出現(xiàn)這種報(bào)錯(cuò):

在網(wǎng)絡(luò)上搜索 HierarchyRequestError 會(huì)找到同樣的案例,大致都指向使用 appendChild 時(shí)報(bào)錯(cuò),因此初步判定此報(bào)錯(cuò)是和節(jié)點(diǎn)操作相關(guān)。

翻看網(wǎng)絡(luò)上的案例,發(fā)現(xiàn)大多是 appendChild 使用方法錯(cuò)誤,而 Edge 的這個(gè)報(bào)錯(cuò)卻是相同的代碼在其他瀏覽器和之前版本的 Edge 下都沒有出現(xiàn)的問題,所以應(yīng)該不會(huì)是粗心造成的低級(jí)錯(cuò)誤,可能是瀏覽器本身的問題。

但畢竟要解決不是。

既然看到 Avalon 1.5.5 報(bào)錯(cuò),那么根據(jù)瀏覽器報(bào)錯(cuò)閱讀源碼,發(fā)現(xiàn)錯(cuò)誤是出現(xiàn)在 ms-repeat 指令中:

while (elem.firstChild) {
    binding.template.appendChild(elem.firstChild)  // 這里報(bào)錯(cuò)
}

那么推斷,這里的操作被最新的 Edge 認(rèn)為是“將不合適的節(jié)點(diǎn) append 到了另一個(gè)不合適的節(jié)點(diǎn)中”。

經(jīng)過一番排查,發(fā)現(xiàn)問題是出在 avalonFragment 上。Avalon 中的所有 fragment 都是通過 avalonFragment.cloneNode(false) 創(chuàng)建的,那么把這些 fragment 都改為由 document.createDocumentFragment() 創(chuàng)建,錯(cuò)誤果然消失。

那么做一個(gè)精簡(jiǎn)的報(bào)錯(cuò)案例:


所以解決方法也很簡(jiǎn)單,暫時(shí)不要使用 cloneNode 的方式創(chuàng)建 Fragment 然后又將其 append 到另一個(gè) clone 出來的 Fragment 中,用 document.createDocumentFragment() 代替。

有意思的是,如果是 cloneNode 一個(gè) element 比如 div 則不會(huì)報(bào)錯(cuò),因此很可能是 Edge 14 自己的 Bug。

皆大歡喜。_(:3」∠)_

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/90874.html

相關(guān)文章

  • Linux 30周年:Linux 5.14閃亮登場(chǎng)!添加新硬件和秘密內(nèi)存區(qū)域支持

    摘要:或許,最重要的是和內(nèi)核調(diào)度,兩者都是進(jìn)行清理工作,以緩解英特爾的和漏洞。說到英特爾,增加了對(duì)的平臺(tái)的更多支持,該平臺(tái)可根據(jù)需要優(yōu)先處理工作負(fù)載。另外,還將增加戴爾硬件隱私支持。linux之父Linus Torvald:慶祝完Linux 30 歲了吧,一起來看新的 Linux 5.14。linux5.14晉升為穩(wěn)定版,在精彩的2021年秋季linux發(fā)行版大量出現(xiàn)之前提供最新的功能、硬件支持和...

    NicolasHe 評(píng)論0 收藏0
  • GreenCloudVPS八周年促銷,VPS年付五折起,10G口大盤雞年付$30起

    摘要:七折優(yōu)惠碼,在所有年度兩年和三年付款中重復(fù)使用可享受的折扣。注意優(yōu)惠碼有效期為年月日至月日。促銷方案特價(jià)特征新加坡位置英國考文垂,核英特爾處理器,硬盤,帶寬個(gè)。 日前GreencloudVPS(綠云)推出了8周年閃購活動(dòng),美國/歐盟KVM VPS的每年、兩年和三年的計(jì)費(fèi)周期可獲得 50% 折扣,部分可重復(fù)享受 40% 的折扣,另外Windows VPS年付、兩年和三年付款中重復(fù)使用可享...

    paraller 評(píng)論0 收藏0
  • Linux 30周年:Linux 5.14閃亮登場(chǎng)!添加新硬件和秘密內(nèi)存區(qū)域支持

    摘要:超多功能增加不再支持添加到的新功能還真不少包括使用的秘密內(nèi)存區(qū)域支持核心調(diào)度支持圍繞的持續(xù)啟用和圖形支持筆記本電腦支持支持。說到英特爾,增加了對(duì)的平臺(tái)的更多支持,該平臺(tái)可根據(jù)需要優(yōu)先處理工作負(fù)載。另外,還將增加戴爾硬件隱私支持。Linux 之父Linus Torvald:慶祝完Linux 30 歲了吧,一起來看新的 Linux 5.14。 沒錯(cuò),8月30日,Torvald宣布推出?Li...

    draveness 評(píng)論0 收藏0
  • greencloudvps(綠云) – 8周年促銷,歐美VPS循環(huán)5折優(yōu)惠,亞太

    摘要:,開啟周年優(yōu)惠活動(dòng),去年貌似是折的優(yōu)惠,今年看來是等不到了。折循環(huán)優(yōu)惠碼越南中國香港日本新加坡新加坡大硬盤存儲(chǔ)折優(yōu)惠由配備雙處理器和超快端口的提供支持折優(yōu)惠碼內(nèi)存流量帶寬價(jià)格購買核不限月鏈接核不限月鏈接核不限月鏈接核不限月鏈接greencloudVPS,開啟8周年優(yōu)惠活動(dòng),去年貌似是3折的優(yōu)惠,今年看來是等不到了。新用戶注冊(cè)和購買記得不要開戴莉,否則會(huì)觸發(fā)欺詐!具體的優(yōu)惠如下: 1)歐...

    jone5679 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<