Javascript 如何在jQuery中触发单击事件?

Javascript 如何在jQuery中触发单击事件?,javascript,jquery,Javascript,Jquery,我是jQuery编程的初学者。我试图在列表单击时触发单击事件,但它无法正常工作。以下是我的代码: <html> <head> <script type="text/javascript" > <script type="text/javascript" src="jquery.js"> <link rel="stylesheet" href="style.css" /> $("ul#select li").click(functio

我是jQuery编程的初学者。我试图在列表单击时触发单击事件,但它无法正常工作。以下是我的代码:

<html>
<head>
<script type="text/javascript" >
<script type="text/javascript" src="jquery.js">

<link rel="stylesheet"  href="style.css" />
$("ul#select li").click(function(e){
    //targ = $(e.target);
    if($(this).hasClass("selected"))
    {
        $(this).removeClass("selected");
        document.location= "cambridge:clearanswer";
    }
    else
    {
        currentanswer = $(this).html();
        document.location = "cambridge:checkanswer:"+currentanswer;
        $("ul.select li").removeClass("selected");
        $(this).addClass("selected");
    }
});

function getUsed()
{
    var total = "";
    $(".boxWord.boxWordUsed").each(function (i){ total = total + this.getAttribute('index_no') + ":"; });
    return total;
}

</script>
</script>
<link href="style.css" media="all" rel="stylesheet" type="text/css" /> 
</head>
<body>
<div class="question" >
<ul data-role="listview" data-inset="true" data-theme="c" data-dividertheme="b" class="select" id="select"> 
            <li data-role="list-divider" class="selected">Overview</li> 
<li data-role="list-divider" class="selected">Overview</li> 
</ul>
</div> 
</body>
</html>

$(“ul#选择li”)。单击(功能(e){
//targ=$(e.target);
if($(this).hasClass(“选定”))
{
$(此).removeClass(“选定”);
document.location=“剑桥:clearanswer”;
}
其他的
{
currentanswer=$(this.html();
document.location=“剑桥:检查答案:”+currentanswer;
$(“ul.select li”).removeClass(“selected”);
$(此).addClass(“选定”);
}
});
函数getUsed()
{
var total=“”;
$(“.boxWord.boxWordUsed”).each(函数(i){total=total+this.getAttribute('index_no')+”:“;});
返回总数;
}
  • 概述
  • 概述
试试看

反而

而且不要忘记将代码包装到

$(function(){
     //your code
});
试一试

反而

而且不要忘记将代码包装到

$(function(){
     //your code
});

您需要将脚本包装到document ready中:

$(document).ready(function() {
   ...your click event code
});

否则,它可能会在加载元素之前尝试附加事件。

您需要将脚本包装到document ready中:

$(document).ready(function() {
   ...your click event code
});

否则,它可能会在加载元素之前尝试附加事件。

只要您已将事件绑定器包装在
$(document).ready(function(){…})中然后它将完美地工作


看看这个演示:

只要您已经将事件绑定器包装在
$(document).ready(function(){…})中然后它将完美地工作


看看这个演示:

首先,您没有在
标记中编写代码,代码在多个标记之间混乱不堪。然后您就可以使用
$(document).ready()
。您的代码中还有其他错误,我已经为您更正了所有错误,我知道您是个新手:)

在此处查看工作演示

以下是更正后的代码:

 <html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<link rel="stylesheet"  href="style.css" />

<script type="text/javascript">
    $(document).ready(function(){
$("ul#select li").click(function(e){
    alert('test');
                        //targ = $(e.target);
                        if($(this).hasClass("selected"))
                        {
                        $(this).removeClass("selected");
                        document.location= "cambridge:clearanswer";
                        }
                        else
                        {
                        currentanswer = $(this).html();
                        document.location = "cambridge:checkanswer:"+currentanswer;
                        $("ul.select li").removeClass("selected");
                        $(this).addClass("selected");
                        }
                        });




function getUsed()
{
    var total = "";
    $(".boxWord.boxWordUsed").each(function (i){ total = total + this.getAttribute('index_no') + ":"; });
    return total;
}

    });
</script>
<link href="style.css" media="all" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="question" >
<ul data-role="listview" data-inset="true" data-theme="c" data-dividertheme="b" class="select" id="select">
            <li data-role="list-divider" class="selected">Overview</li>
<li data-role="list-divider" class="selected">Overview</li>
</ul>
</div>
</body>
</html>

$(文档).ready(函数(){
$(“ul#选择li”)。单击(功能(e){
警报(“测试”);
//targ=$(e.target);
if($(this).hasClass(“选定”))
{
$(此).removeClass(“选定”);
document.location=“剑桥:clearanswer”;
}
其他的
{
currentanswer=$(this.html();
document.location=“剑桥:检查答案:”+currentanswer;
$(“ul.select li”).removeClass(“selected”);
$(此).addClass(“选定”);
}
});
函数getUsed()
{
var total=“”;
$(“.boxWord.boxWordUsed”).each(函数(i){total=total+this.getAttribute('index_no')+”:“;});
返回总数;
}
});
  • 概述
  • 概述

首先,您没有在
标记中编写代码,代码在多个标记之间混乱不堪。然后您就可以使用
$(document).ready()
。您的代码中还有其他错误,我已经为您更正了所有错误,我知道您是个新手:)

在此处查看工作演示

以下是更正后的代码:

 <html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<link rel="stylesheet"  href="style.css" />

<script type="text/javascript">
    $(document).ready(function(){
$("ul#select li").click(function(e){
    alert('test');
                        //targ = $(e.target);
                        if($(this).hasClass("selected"))
                        {
                        $(this).removeClass("selected");
                        document.location= "cambridge:clearanswer";
                        }
                        else
                        {
                        currentanswer = $(this).html();
                        document.location = "cambridge:checkanswer:"+currentanswer;
                        $("ul.select li").removeClass("selected");
                        $(this).addClass("selected");
                        }
                        });




function getUsed()
{
    var total = "";
    $(".boxWord.boxWordUsed").each(function (i){ total = total + this.getAttribute('index_no') + ":"; });
    return total;
}

    });
</script>
<link href="style.css" media="all" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="question" >
<ul data-role="listview" data-inset="true" data-theme="c" data-dividertheme="b" class="select" id="select">
            <li data-role="list-divider" class="selected">Overview</li>
<li data-role="list-divider" class="selected">Overview</li>
</ul>
</div>
</body>
</html>

$(文档).ready(函数(){
$(“ul#选择li”)。单击(功能(e){
警报(“测试”);
//targ=$(e.target);
if($(this).hasClass(“选定”))
{
$(此).removeClass(“选定”);
document.location=“剑桥:clearanswer”;
}
其他的
{
currentanswer=$(this.html();
document.location=“剑桥:检查答案:”+currentanswer;
$(“ul.select li”).removeClass(“selected”);
$(此).addClass(“选定”);
}
});
函数getUsed()
{
var total=“”;
$(“.boxWord.boxWordUsed”).each(函数(i){total=total+this.getAttribute('index_no')+”:“;});
返回总数;
}
});
  • 概述
  • 概述

你好,兄弟,回答不错,兄弟,但我没有指导,我必须为android开发一个应用程序,我必须使用Jquery,你能指导我学习它的原理吗,如果您有任何问题,只需发布问题:)嘿,兄弟,它在我的浏览器中不工作,我的浏览器出现两个错误未捕获引用错误:$未定义jquery.js无法加载资源请将jquery文件(jquery.js)保持在HTML所在的同一路径。你可以从hello bro下载jQuery,很好的回答bro,但我没有指导我必须为android开发一个应用程序我必须使用jQuery你能指导我学习它的原理吗,如果您有任何问题,只需发布问题:)嘿,兄弟,它在我的浏览器中不工作,我的浏览器出现两个错误未捕获引用错误:$未定义jquery.js无法加载资源请将jquery文件(jquery.js)保持在HTML所在的同一路径。您可以从下载jQuery