第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

無法使用 JavaScript 訪問自定義 HTML 標(biāo)簽內(nèi)的 DOM 元素

無法使用 JavaScript 訪問自定義 HTML 標(biāo)簽內(nèi)的 DOM 元素

慕桂英546537 2021-10-29 16:24:44
我有幾個(gè)帶有很長下拉列表的后端 Salesforce (SF) 頁面(例如多達(dá) 1,000 個(gè)選項(xiàng)),我想在 Chrome 書簽中使用 JS 代碼將過濾器框添加到頁面上的任意 SELECT(代碼如下)。我認(rèn)為,問題在于我想要訪問的節(jié)點(diǎn)位于名為force-aloha-page.就我而言,我要訪問的第一個(gè)元素是自定義元素內(nèi)的 IFRAME。(這不是跨站點(diǎn)安全問題,因?yàn)榧词箒碓床缓?,JS 仍會(huì)獲得 IFRAME,只是其中沒有任何內(nèi)容。)例如,我可以檢查代碼并查看自定義 HTML 元素,查看 iframe,并且可以查看頁面上 iframe 的內(nèi)容。如果我只是將節(jié)點(diǎn)轉(zhuǎn)儲(chǔ)到控制臺(tái),它會(huì)顯示 JS 無法訪問的 DOM 元素:document.getElementsByTagName("FORCE-ALOHA-PAGE")[0]<force-aloha-page data-data-rendering-service-uid="203" data-aura-rendered-by="505:0" force-alohapage_alohapage-host><div force-alohapage_alohapage class="iframe-parent slds-template_iframe slds-card"><iframe force-alohapage_alohapage height="100%" width="100%" scrolling="yes" allowtransparency="true" name="vfFrameId_1569557364522" title="Page Configuration" allowfullscreen="true" lang="en-US" allow="geolocation *; microphone *; camera *">…</iframe></div></force-aloha-page>我可以看到元素div的iframe內(nèi)部和內(nèi)部force-aloha-page。但是,如果我嘗試訪問 iframe,就會(huì)發(fā)生這種情況:document.getElementsByTagName('IFRAME')0document.querySelectorAll("iframe")0JS 可以看到自定義元素:document.getElementsByTagName("FORCE-ALOHA-PAGE").length1但里面什么都沒有:document.getElementsByTagName("FORCE-ALOHA-PAGE")[0].childNodes.length0即使上面的“節(jié)點(diǎn)轉(zhuǎn)儲(chǔ)”有效,這也沒有:document.getElementsByTagName("FORCE-ALOHA-PAGE")[0].innerHTML""進(jìn)入 iframe 后,我可能會(huì)遇到其他問題,但我必須先通過該自定義標(biāo)記。我試過的我在 Chrome 中創(chuàng)建了 JS 書簽,它可以在主頁和 IFRAME 中的 SELECT 上使用,并具有良好的 XSS。但不適用于自定義標(biāo)簽內(nèi)的 SELECT。這是我在編寫書簽代碼時(shí)使用的測(cè)試頁。
查看完整描述

2 回答

?
蕭十郎

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超13個(gè)贊

該force-aloha-page元素可能是一個(gè)Web 組件,這可以解釋為什么您無法訪問內(nèi)部的 DOM,因?yàn)樗且粋€(gè)Shadow DOM。


嘗試使用該shadowRoot屬性訪問它,如下所示:


class ForceAlohaPage extends HTMLElement {

    

    constructor() {

        super();

        this.attachShadow({

            mode: 'open'

        }).innerHTML = '<iframe force-alohapage_alohapage height="100%" width="100%" scrolling="yes" allowtransparency="true" name="vfFrameId_1569557364522" title="Page Configuration" allowfullscreen="true" allow="geolocation *; microphone *; camera *"></iframe>';

    }

}


customElements.define("force-aloha-page", ForceAlohaPage);


console.log(document.getElementsByTagName('iframe').length);


console.log(document.getElementsByTagName("force-aloha-page")[0].childNodes.length);


console.log(document.getElementsByTagName("force-aloha-page")[0].innerHTML);


console.log(document.getElementsByTagName('force-aloha-page')[0].shadowRoot.childNodes[0]);

<force-aloha-page></force-aloha-page>


查看完整回答
反對(duì) 回復(fù) 2021-10-29
  • 2 回答
  • 0 關(guān)注
  • 255 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)