Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript点击事件问题_Javascript_Jquery_Html_Css - Fatal编程技术网

javascript点击事件问题

javascript点击事件问题,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个问题,下面是一个带有锚链接的列表,现在单击链接时,我不希望浏览器转到该网页,而是希望浏览器停留在当前页面上,并在警告框中向用户显示列表。我知道这可以通过javascript来实现,也许可以通过列表项上的onclick事件来实现,并显示一个警报框,但是如何停止浏览器进入该网页呢 <ul id='list_o_links'> <li><a href='http://www.google.com'>List Item1</a></

我有一个问题,下面是一个带有锚链接的列表,现在单击链接时,我不希望浏览器转到该网页,而是希望浏览器停留在当前页面上,并在警告框中向用户显示列表。我知道这可以通过javascript来实现,也许可以通过列表项上的onclick事件来实现,并显示一个警报框,但是如何停止浏览器进入该网页呢

 <ul id='list_o_links'>
    <li><a href='http://www.google.com'>List Item1</a></li>
    <li><a href='http://www.yahoo.com'>List Item2</a></li>
    </ul> 


  • 通过调用绑定事件处理程序中的
    event.preventDefault()
    或返回
    false
    ,可以阻止浏览器转到链接目标。我认为第一点更加明确:

    var alert_instead_of_following_link = function (event) {
        event.preventDefault();
        alert(this.href);
    };
    
    $("#list_o_links a").bind("click", alert_instead_of_following_link);
    

    顺便说一句,将
    preventDefault()
    作为函数的第一行、最后一行还是中间行并不重要
    return false
    必须是最后一个,因为它停止(返回)函数。我发现
    .each()
    在可能的情况下使用起来更简单:
    $(“ul#list(o)links”).children().each(函数(){list.push($(this.text());})
    
    var alert_instead_of_following_link = function (event) {
        event.preventDefault();
        alert(this.href);
    };
    
    $("#list_o_links a").bind("click", alert_instead_of_following_link);