2017-06-21 54 views
0

下午好<!DOCTYPE HTML>導致onmousedown事件失敗

我已經通過了工作「阿賈克斯傻瓜書」,我一直都在努力的例子。去年,我在w3schools上完成了html和javascript課程。我已經開始了Web服務,但是我發現它非常混亂,所以我決定嘗試Ajax以獲得更好的理解。

我碰到過一個很奇怪的問題。在這本書的第54頁是這樣的例子:

<html> 
    <head> 
     <title>JavaScript Event Example</title> 
    </head> 
    <body onmousedown="document.bgcolor='pink'"> 
     <h1>Click this page to turn it pink!</h1> 
    </body> 
</html> 

我的問題是,當我添加到頁面頂部的鼠標點擊不起作用。當我刪除它然後它。我加入了該例子,因爲W3Schools的HTML當然說你必須添加它

<!DOCTYPE html> 
<html> 
    <head> 
     <title>JavaScript Event Example</title> 
    </head> 
    <body onmousedown="document.bgcolor='pink'"> 
     <h1>Click this page to turn it pink!</h1> 
    </body> 
</html> 

我沒有在谷歌上搜索「導致onmousedown事件失敗」,但我沒有發現任何具體的與此有關。我發現這個職位,但它不是我的問題:「onmousedown event object behaving strangely」在谷歌的其他文章都沒有幫我

我也做在計算器搜索,但遺憾的是我還沒有發現任何

我的問題是:爲什麼腳本停止工作時,我給它添加

問候 菲利普

+1

燒掉這本書,現在。不要去w3schools。我懷疑它失敗了,因爲你告訴瀏覽器你正在使用HTML5,但你使用的是上個世紀的代碼。這工作:'' –

+0

[javascript單擊後更改背景顏色]的可能重複(https://stackoverflow.com/questions/31089414/javascript- change-background-color-on-click) – Syfer

+2

你的第一個例子真的有用嗎?它不適合我。另外,'bgcolor'已經過時了。 (並且使用w3schools沒什麼不妥) – Rob

回答

0

聲明的用意是,瀏覽器知道哪個版本您正在使用它哦HTML是不是一個html標記? 。

例如,假設您使用HTML 4然後引用DTD,則DTD將爲html4指定標記語言的規則,以便瀏覽器正常工作。

因此,在您的情況下,您使用的函數/屬性「onmousedown」可能無法被瀏覽器識別,並且瀏覽器將被卡住爲默認的html格式。所以當你寫瀏覽器識別你的HTML版本,然後呈現數據。

+0

DOCTYPE聲明(或缺少)肯定會影響渲染,但在涉及到腳本時我沒有意識到任何特定的限制。您甚至可以使用HTML4聲明成功使用HTML5數據屬性。 –