jQuery onclick选择器不起作用

前端之家收集整理的这篇文章主要介绍了jQuery onclick选择器不起作用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

$( “输入[类型= ‘按钮’] [^的onclick = ‘保存’]”)

它适用于FF,但在IE上…

onclick选择器部件有问题.有没有办法让跨浏览器解决

谢谢帕维尔

编辑:

    $("img[src$='scroll.gif']").click(function(){
    var targetOffset = $("input[type='button'][onclick^='save']").offset().top; 
    $("html,body").animate({scrollTop: targetOffset},400);
});
最佳答案
您可以创建自定义选择器(可能效率非常低):

$.extend($.expr[':'],{
  onclick: function(node,index,args,stack) {
    var events = $(node).data('events');
    var fn = args[3];
    if (!events || !events.click) return false;
    for (i in events.click) {
      if (events.click[i].name == fn) return true;
    }
    return false;
  }
});

$("input[type='button']:onclick('save')")

虽然function.name在IE中不起作用,所以你必须使用toString()和regexps跳过另一个钩子.总而言之,手动维护事件处理程序名称列表要好得多.

编辑:查看您的代码段,似乎没有理由搜索事件处理程序.而不是疯狂地抛出属性选择器,使用类和id以语义上有意义的方式处理元素,例如

 

然后

$("#scroll-icon".click(function(){
  var targetOffset = $("submit-buttton").offset().top; 
  $("html,400);
});

猜你在找的jQuery相关文章