【问题标题】:.trigger('click') not working on mouseenter.trigger('click') 在 mouseenter 上不起作用
【发布时间】:2015-08-27 21:50:52
【问题描述】:

我有以下代码:

$("#full-year td").mouseenter(function () {
    $(this).trigger('click');
});

由于某种原因,.trigger('click') 只会在光标所在的第一个 td 上触发,而不会在其他 td 上触发。

这是一个使用 .toggleClass 而不是 .trigger 的工作示例。

https://jsfiddle.net/bx5zbor5/2/

这是一个不工作的例子。(注意它是如何在它登陆的第一个 td 上触发的)

https://jsfiddle.net/Lym9wmaf/5/

感谢您的帮助。

【问题讨论】:

  • 你想在click 上做什么? only fire for the first td你是怎么识别的?
  • 当我使用你的小提琴时,.toggleClass 似乎在每个td 上都能正常工作。
  • @Wolf 正是他在帖子中所说的。它适用于 toggleClass 但他希望它适用于触发器(仅适用于第一个 td)
  • 这段代码在你的小提琴中运行良好:$("#our_table td").mouseenter(function () { $(this).on('click', function() { console.log('a'); }); $(this).trigger('click'); });
  • 你必须有触发事件,例如$('#td').click(function() { ... });$('#td).on('click, function() { ... });

标签: javascript jquery


【解决方案1】:

这可以帮助你。

$("#our_table td").mouseenter(function (evt) {
            $(evt.currentTarget).toggleClass("highlighted");
            $(evt.currentTarget).trigger("click");
        }).click(function(evt){
    console.log($(evt.currentTarget).html());
});

Sample Code

如果您遇到任何问题,请告诉我。

【讨论】:

    【解决方案2】:

    您在 td 中附加了 #(检查选择器:$("#td")),这意味着您选择了 ID 为 td 的表格单元格,而不是每个表格单元格。

    将选择器更改为:$('td')

    -- 编辑-- 似乎可以工作...结帐https://jsfiddle.net/bx5zbor5/7/

    【讨论】:

    • 编辑错误。原来是$("#full-year td")
    【解决方案3】:

    光标永远不会落在任何td 元素上,因为 td 不是可编辑元素。

    看看下面的trigger 是否适用于每个元素:

    $("#our_table td").mouseenter(function () {
        $(this).trigger('click');
    });
    
    $("#our_table td").click(function(){
        console.log($(this).text());
    })
    

    Updated DEMO

    每当鼠标进入td 中的任何一个console 它的文本。

    【讨论】:

      【解决方案4】:

      使用

      $('#full_year id').click(function(){ //foo });

      代替

      $('#full_year id').on('click', function(){ //foo });

      就像你把它放在 cmets 中一样。 https://api.jquery.com/click/ 这里说事件将绑定到点击,而在 https://api.jquery.com/on/ 只是说它添加了一个侦听器,不绑定实际事件。

      【讨论】:

        猜你喜欢
        • 2014-12-27
        • 1970-01-01
        • 2017-06-16
        • 1970-01-01
        • 2022-10-01
        • 1970-01-01
        • 1970-01-01
        • 2018-01-04
        • 1970-01-01
        相关资源
        最近更新 更多