2013-04-25 88 views
1

希望我不聽起來像一個白癡張貼這一點,但使用:onhashchange事件casuing無效標記驗證

<body onhashchange="HashChangeHandler();"> 

導致一個無效的標記驗證。

是否還有其他地方我可以把它放在身體標籤之外?

我知道那裏有window.onhashchange = funcRef;window.addEventListener("hashchange", funcRef, false);但我不知道該把它放在哪裏,如果這是有道理的。

該網站仍然工作完美,但無效的標記旗正在竊聽我!

+0

你什麼時候需要調用HashChangeHandler方法?加載頁面之後或加載頁面之前,或者當你打電話時不重要? – 2013-04-25 08:51:00

+0

@TheDarkKnight - 推測當片段標識符改變時需要調用它。因此它在事件處理程序中使用。 – Quentin 2013-04-25 08:52:23

+0

你可以嘗試添加它爲window.onload = HashChangeHandler;在頭標籤的腳本標籤內()。這就解決了你的問題。 – 2013-04-25 08:52:37

回答

1

我知道這裏有...但我不知道該把它放在哪裏,如果這是有道理的。

<script>元素中。就這樣。

<script> 
function thingy(e) { 
    alert('changed'); 
} 
window.addEventListener("hashchange", thingy, false); 
</script> 
+0

我認爲這很簡單:-)我只是不確定是否可以將它放在頁面頂部的腳本元素中。今天早上不直截了當地說。正是我爲什麼擔心聽起來像一個這麼簡單的傻瓜。謝謝。 – Lee 2013-04-25 09:14:46