带有`click`事件存储的jQuery元素未按要求工作

3g网络火车

我的一位APP开发人员要求

我克隆了link3次并存储到一个对象中。在我存储到对象之后,我向存储对象的link元素添加了一些click事件

我有一个导航链接,当用户单击导航编号时,我会将存储的元素附加到容器中。

所有的作品。问题是:

click事件link仅对页面加载有效。将其他存储的对象改组到容器后,它不起作用。

如何解决这个问题。一切都消失了。click事件无法继续进行。

这是我的js:

var listLength = $('li').length;
var origional = $('.content');
var catcheEl = {};

    for(i=1;i<= listLength;i++){
        catcheEl['content'+i] = origional.clone();
        var link = $(catcheEl['content'+i]).find('a').addClass('link'+i);
        addEvent(link);
    }

function addEvent (link) {
    var x = 0;
    link.click(function(e){
        e.preventDefault();
        x++;
        console.log(x);
        $(this).addClass('p'+x); //only adds on page load.
    });
}

$('li').click(function(){
    var num = $(this).find('button').prop('class');
    $('#newContainer').html(catcheEl['content'+num]); //not working once other elements loaded.
});

$('.content').hide();

现场演示

我需要的是:

  1. 我应该link按一下导航按钮以重新整理元素

  2. 的班级名称element应继续

  3. 添加的事件应该继续。

提前致谢。

剃刀藻

编辑新答案
我不太喜欢它,因为它依赖于类的值(您应该进行一些安全检查,但是...基本上,我已经编辑了定义的方式x,所以我检索了a的所有类,拆分后,检查数组的长度,
然后,如果是1(仅link类)或0(不知道,以防万一),或者不是数组,则进行设置,0否则获取最后一个数组元素并删除所有非数字位(希望不知道空字节或类似的有趣人物)。

var listLength = $('li').length,
    origional = $('.content'),
    catcheEl = {};

function addEvent(link) {
    //Define the x variable
    var v=link.attr('class').split(/\s+/),
        l=v.length,
        x= (v.constructor === Array && (l==1 || l===0))? 0:parseInt(v[l-1].replace(/\D/g,''));

    link.click(function (e) {
        e.preventDefault();
        x++;
        $(this).addClass('p' + x);
    });
}

for (i = 1; i <= listLength; i++) {
    catcheEl['content' + i] = origional.clone();
    var link = $(catcheEl['content' + i]).find('a').addClass('link' + i);
    addEvent(link);
}

$('li').click(function () {
    var num = $(this).find('button').prop('class');
    $('#newContainer').html(catcheEl['content' + num]);
    addEvent($(catcheEl['content' + num]).find('a')); //Re-bind the event
});

$('.content').hide();

小提琴

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Click事件已添加到附加的html;元素未按预期工作

来自分类Dev

发送带有jquery click事件的额外变量

来自分类Dev

外部jquery .click()事件有时无法正常工作

来自分类Dev

jQuery append()元素click事件

来自分类Dev

jQuery的更改事件不要求输入元素

来自分类Dev

带有SEARCH的IFS语句未按预期工作

来自分类Dev

带有 nodejs 客户端的 Cassandra 未按预期工作

来自分类Dev

使用带有 find 的“not”运算符未按预期工作

来自分类Dev

就绪事件未按预期工作

来自分类Dev

就绪事件未按预期工作

来自分类Dev

Safari中带有svg元素的按钮未触发Click事件

来自分类Dev

AS3-对于数组中的每个元素,传递带有不同参数的click事件

来自分类Dev

如何使用jquery将click事件绑定到没有特定子元素的元素?

来自分类Dev

jQuery的.click()事件停止工作

来自分类Dev

在JQuery中绑定动态元素的click事件

来自分类Dev

从jquery帖子创建的新元素的Click事件

来自分类Dev

带有AngularStrap选择元素的Onchange事件

来自分类Dev

带有事件的嵌套元素

来自分类Dev

带有动画文本的.fadeToggle上的jQuery .click事件仅触发一次

来自分类Dev

Elasticsearch 动态模板未按要求工作

来自分类Dev

带有jQuery的Wrapp元素?

来自分类Dev

使用JQUERY选择带有.on('change')事件的动态插入的Div元素

来自分类Dev

对于已在jquery中动态添加的元素,不会发生click事件,尽管在加载页面时可以正常工作

来自分类Dev

jQuery on.click不适用于首次点击(带有动态元素)

来自分类Dev

如何在运行时将带有click事件的元素添加到角度范围

来自分类Dev

如何在运行时将带有click事件的元素添加到角度范围

来自分类Dev

jQuery追加未按预期工作

来自分类Dev

jQuery 验证未按预期工作

来自分类Dev

jQuery click事件处理类元素和元素内部

Related 相关文章

  1. 1

    Click事件已添加到附加的html;元素未按预期工作

  2. 2

    发送带有jquery click事件的额外变量

  3. 3

    外部jquery .click()事件有时无法正常工作

  4. 4

    jQuery append()元素click事件

  5. 5

    jQuery的更改事件不要求输入元素

  6. 6

    带有SEARCH的IFS语句未按预期工作

  7. 7

    带有 nodejs 客户端的 Cassandra 未按预期工作

  8. 8

    使用带有 find 的“not”运算符未按预期工作

  9. 9

    就绪事件未按预期工作

  10. 10

    就绪事件未按预期工作

  11. 11

    Safari中带有svg元素的按钮未触发Click事件

  12. 12

    AS3-对于数组中的每个元素,传递带有不同参数的click事件

  13. 13

    如何使用jquery将click事件绑定到没有特定子元素的元素?

  14. 14

    jQuery的.click()事件停止工作

  15. 15

    在JQuery中绑定动态元素的click事件

  16. 16

    从jquery帖子创建的新元素的Click事件

  17. 17

    带有AngularStrap选择元素的Onchange事件

  18. 18

    带有事件的嵌套元素

  19. 19

    带有动画文本的.fadeToggle上的jQuery .click事件仅触发一次

  20. 20

    Elasticsearch 动态模板未按要求工作

  21. 21

    带有jQuery的Wrapp元素?

  22. 22

    使用JQUERY选择带有.on('change')事件的动态插入的Div元素

  23. 23

    对于已在jquery中动态添加的元素,不会发生click事件,尽管在加载页面时可以正常工作

  24. 24

    jQuery on.click不适用于首次点击(带有动态元素)

  25. 25

    如何在运行时将带有click事件的元素添加到角度范围

  26. 26

    如何在运行时将带有click事件的元素添加到角度范围

  27. 27

    jQuery追加未按预期工作

  28. 28

    jQuery 验证未按预期工作

  29. 29

    jQuery click事件处理类元素和元素内部

热门标签

归档