<link rel="stylesheet" type="text/css" media="screen" href="style.css"/>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
$('lol').update('Hi!');
</script>
<title>Memory Game</title>
</head>
<body>
<h1 id="lol">Hello</h1>
</body>
足够简单。 什么都没发生,这就是FF在控制台中给我的东西:
$(“lol”)为空 [Break On Errors] $('lol')。update('嗨!'); index.html(第10行)
我错过了什么?
答案 0 :(得分:2)
脚本在解析脚本元素时立即运行。由于脚本元素出现在lol
之前,因此无法找到它。
将脚本移动到文档末尾,或者延迟执行某人(例如将其包装在函数中并将其附加到onload事件中)。
答案 1 :(得分:1)
如果您通过ID访问,我认为您应该添加#
$('#lol').update('Hi!');
编辑:抱歉,我以为你在使用jQuery。你需要把
<script type="text/javascript">
$('lol').update('Hi!');
</script>
在页面底部。
答案 2 :(得分:0)
window.load = function() { $('lol').update('Hi!'); })
答案 3 :(得分:0)
在DOM加载方法上尝试跨浏览器兼容,这在文档加载时但在绘制页面之前触发:
<script>
document.observe("dom:loaded", function() {
$('lol').update('Hi!');
});
</script>
您也可以使用简单的脚本标记而不是text / whateverscript。
答案 4 :(得分:0)
也许你错过了文件准备检查:
document.observe("dom:loaded", function() {
$('lol').update('Hi!');
});
这里的jsFiddle示例:http://jsfiddle.net/qWzTp/1/