我正在尝试使用 Jquery 将事件监听器添加到 html 元素。
test.html
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
<script src="test.js"></script>
<body>
<select id="options" >
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
</body>
test.js
alert("outside function");
$('#options').change(function() {
alert("inside function");
var x = $('#options option:selected').text();
alert(x);
});
现在,当我打开 file:///home/ronnie/check/popup.html
时,如果我选择任何选项,我的 jquery 函数不会被触发,我只会得到 外部函数
弹出窗口。
我在 jsfiddle 中尝试了相同的代码,它工作得非常好 http://jsfiddle.net/Vj9LK/ .
所以,我的问题是为什么它在 chromium 中不起作用。
最佳答案
您正在选择$("#options")
在test.js
,它在 <script>
中定义。 <body>
之前的标签被 build 。 jQuery 有一个函数可以等待一切都构建完毕,以便您可以选择元素:
$(document).ready(function() {
// contents of test.js
});
关于javascript - jQuery:事件监听器没有被触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14081079/