我试图从我的jQuery代码调用JavaScript函数但不起作用。
JavaScript函数:
<script type="text/javascript">
function showonlyone(thechosenone) {
var newboxes = document.getElementsByTagName("a");
for (var x=0; x<newboxes.length; x++) {
name = newboxes[x].getAttribute("class");
if (name == 'newboxes') {
if (newboxes[x].id == thechosenone) {
newboxes[x].style.display = 'block';
}
else {
newboxes[x].style.display = 'none';
}
}
}
}
</script>
jQuery代码:
<script type="text/javascript">
jQuery(document).ready(function ($) {
$("#img2").on("click", function() {
event.preventDefault();
showonlyone("im2");
});
});
</script>
答案 0 :(得分:3)
event.preventDefault();
可能只是js错误,
$("#img2").on("click", function(event){
event.preventDefault();
showonlyone("im2");
});
但无论如何,如果你已经开始,最好在jquery中编写所有代码。
答案 1 :(得分:2)
并非你&#34; 需要将event
传递给function
,&#34;因为jQuery已经这样做了。
但是,您应该命名参数,以便您可以将其引用为event
:
$("#img2").on("click", function(event){
// ^^^^^
event.preventDefault():
// etc.
});
在JavaScript中,event
不是this
之类的关键字。从历史上看,它有been a global variable,但并未标准化。