未捕获的类型错误:对象[对象的对象]具有“上”没有方法(Uncaught TypeError: Ob

2019-06-25 06:14发布

谁能帮我算出这个?

当我使用最新的(或新望)的jQuery的版本中,小脚本以下的罚款。 然而,当我使用旧版本的jQuery,我的脚本说, on函数不存在。

这里是我的脚本不与​​旧版本的jQuery的工作:

$(document).ready(function () {
    $(".theImage").on("click", function(){
        // In the event clicked, find image, fade slowly to .01 opacity
        $(this).find("img").fadeTo("slow", .01).end()
        // Then, of siblings, find all images and fade slowly to 100% opacity
               .siblings().find("img").fadeTo("slow", 1);           
    })
})

任何形式的帮助表示赞赏。

Answer 1:

您必须使用bind的,而不是on ,如on中只介绍了jQuery的1.7 。

$(document).ready(function () {
    $(".theImage").bind("click", function(){
        // In the event clicked, find image, fade slowly to .01 opacity
        $(this).find("img").fadeTo("slow", .01).end()
        // Then, of siblings, find all images and fade slowly to 100% opacity
        .siblings().find("img").fadeTo("slow", 1);           
    })
})


Answer 2:

你可以使用delegate()例如:

$("table").delegate("td", "click", function() {
  $(this).toggleClass("chosen");
});

这相当于使用写入以下代码on()

$("table").on("click", "td", function() {
  $(this).toggleClass("chosen");
});


Answer 3:

您必须使用jQuery版本1.7+使用on() bind()已过时。



Answer 4:

更改on功能, bind

.children().on("click",function()

.children().bind("click",function()



文章来源: Uncaught TypeError: Object [object Object] has no method 'on'