我有一個非常簡單的一塊JavaScript代碼的,只是應該工作,當我在瀏覽器控制檯中運行它,它僅適用:腳本,在瀏覽器控制檯工作,但不是當代碼
<script>
$(".hopscotch-close").click(function() {
alert("Hi");
Cookies.set("tourState", "closed")
})
</script>
因爲它運行在控制檯我知道: 1)".hopscotch-close"
是好的; 2)代碼中沒有可能阻止其運行的錯誤; 1)因爲是一個「點擊」事件我知道我沒有準備好DOM的問題(我可以放在任何地方 - 但在這種情況下,在<body>
的底部; 2)我知道我沒有問題,因爲使用相同的名稱爲一類比其他的東西存在; 3)Safari和Firefox中的行爲是相同的,所以它不是瀏覽器問題。我知道如果沒有完整的代碼,這是非常困難的,但是如果有人經歷過這種情況,那麼對於可能是什麼問題可能有沒有想法。
'.hopscotch-close'元素被動態追加? –
在綁定點擊處理程序之前檢查'$(「。hopscotch-close」).length',如果它是0,你知道你沒有所需的元素 – drys
@GuruprasadRao是的,它是,我認爲你是對的...(請參閱下面的評論) –