我的index.html有一个按钮(id="my-btn"
):
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>My INDEX PAGE</title>
</head>
<body>
<br><input type="button" id="my-btn" value="OPEN NEW WINDOW"/>
<script src="js/my.js"></script>
<script src="js/jquery-1.5.1.js"></script>
</body>
</html>
js / my.js 处理按钮点击事件,点击my-btn
按钮后,将打开新的浏览器窗口使用新页面( test.html )
my.js:
$('#my-btn').click(function(){
window.open('test.html', 'testwindow');
});
新页面( test.html )在新的浏览器窗口中打开:
的test.html:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>TEST</title>
</head>
<body>
<div id="my-name"></div>
<script src="js/test.js"></script>
<script src="js/jquery-1.5.1.js"></script>
</body>
</html>
在新页面中,将调用 test.js ,并将附加文本“JOHN”作为此页面的内容
JS / test.js
$(document).ready(function(){
$("#my-name").append("<strong>JOHN</strong>");
});
但是,当在新弹出的浏览窗口中打开 test.html 页面时,我没有看到“JOHN”文本,这是一个空白页面,为什么?
(我在“js /”目录下有jquery-1.5.1.js,所有javascript文件都在js /下)
答案 0 :(得分:4)
这里很简单......
在定义$之前,你正在调用$(document).ready ...。
这种情况发生在jquery中,因此您需要切换脚本顺序:
<script src="js/jquery-1.5.1.js"></script>
<script src="js/test.js"></script>
答案 1 :(得分:2)
test.js的内容取决于jQuery,但是在执行test.js中的所有内容之前,不要尝试加载jQuery。
切换脚本元素。