在您等待书籍的同时!
向Mozilla 开发者中心学习!
一个例子:
例子
固定版本
document.write(
'Once upon a time there was a ' + heroGender +
' named ' + heroName + '.' + '<BR>' + heroName +
' had a ' + petType + ' called ' + petName + '.');
破解版
你缺少+
符号。
document.write(
'Once upon a time there was a ' + heroGender +
' named ' + heroName /* + */ '.' /* + */ '<BR>' + heroName +
' had a ' + petType + ' called ' + petName + '.');
尝试使用
- Firefox 和Firebug及其控制台选项卡(按 F12)
- IE9 和内置控制台(按 F12。确保控制台已打开然后刷新)。
- Chrome 和内置控制台(按 Ctrl+Shift+J)
观察任何错误消息。
如果那太费力了,那就试试
window.onerror = function(e) {
alert(e.message);
}
这是一个“改进的”更符合标准的版本。示例链接!
HTML:
<label> Your Hero's gender </label><input id="heroGender"/><br/>
<label> Your Hero's name </label><input id="heroName"/><br/>
<label> Your Hero's pet type </label><input id="petType"/><br/>
<label> Your Hero's pet name </label><input id="petName"/><br/>
<button> Make me a hero! </button>
<div id="output"></div>
JavaScript:
// make your hero when you press the button
document.getElementsByTagName("button")[0].addEventListener("click", function() {
// get all the values from the text boxes
var gender = document.getElementById("heroGender").value,
name = document.getElementById("heroName").value,
petType = document.getElementById("petType").value,
petName = document.getElementById("petName").value;
// set the text on your output.
document.getElementById("output").textContent =
"Once upon a time there was a " + gender +
" named " + name + ". " + name + " had a pet " +
petType + " called " + petName;
}, false);
上面的代码将在 IE8 或更低版本中中断 :(。让 JavaScript 跨浏览器工作是一种痛苦。
所以我你可以阅读浏览器的文档
但这些并不容易阅读或导航。visibone BrowserBook是一个很棒的跨浏览器脚本可视化指南。
它将显示跨浏览器支持(红色是 Firefox,蓝色是 IE):

给它几个月,你就会知道如何舒适地使用所有这些。