我想標記顯示在我的網站上的特定文本。例如,如果有人點擊該按鈕,然後彈出窗口顯示該句子。如何標記特定文本?
是否有可能在彈出窗口中標記此句子?我無法使用URL,因爲它不會更改,而且我也沒有任何類或ID。
所以我只想在特定句子在網站上顯示時觸發標籤。
非常感謝。
我想標記顯示在我的網站上的特定文本。例如,如果有人點擊該按鈕,然後彈出窗口顯示該句子。如何標記特定文本?
是否有可能在彈出窗口中標記此句子?我無法使用URL,因爲它不會更改,而且我也沒有任何類或ID。
所以我只想在特定句子在網站上顯示時觸發標籤。
非常感謝。
爲了回答您的標題問題毫不誇張地(不,我認爲下面是一個好主意):
創建一個頁面上與DOM解僱後的自定義HTML標籤加載(因爲你想要評估需要等到文本實際顯示的文本,因此您無法觸發pageLoad上的標記)。
輸入以下代碼:
<script>
if(document.getElementsByTagName('body')[0].innerHTML.indexOf('myText') > -1) {
dataLayer.push('event':'myTextIsPresent');
}
</script>
(你正在尋找的實際文本替換「會將myText」而一些舊的瀏覽器可能不支持的getElementsByTagName)。這會將整個HTML主體加載到一個變量中,並且indexOf看起來是所需的文本(如果是,則返回正整數或0,否則返回-1)。
使用事件名稱爲myTextIsPresent的自定義事件類型創建觸發器。
用新的觸發器觸發標籤。
現在這有更多的缺點,我很在意詳細說明(您將大量文本轉儲到瀏覽器內存中,只能在DOM準備好的情況下啓動標籤等),但這是可能的。
但是,不看文本,而是通過某些用戶交互觸發標籤(如啓動彈出窗口的按鈕點擊)是一個更好的主意。
跟蹤啓動彈出窗口的按鈕不是更容易嗎?你可以通過點擊事件來做到這一點。 –