html5 - 如何用jquery获取一个元素的祖元素(该组元素有多个兄弟元素),并删除其祖元素
阿神
阿神 2017-04-17 13:36:42
[HTML讨论组]

如何用jquery获取一个元素的祖元素(该组元素有多个兄弟元素),并删除其祖元素

实现点击垃圾箱删除该列的功能。

        $('.min_delete').on('tap',function(){
            $(this).parents('li').css('display','none');
            // $(this).parents('li').css('background','red');红色
            // alert($(this).parents('li').size()); 1

        })

自己获取到了祖先元素,但是设置display = none时,并不是我预期的那样,反而是下面的一个li也跟消失了。但给该元素设置背景颜色时,只有当前this的祖先元素li的背景色是红色的这是怎么回事?
将$('.min_delete')换成$('#min_delete')时可以将li隐藏,但不可能分别设置id的,请问各位有怎么办?

阿神
阿神

闭关修行中......

全部回复(4)
黄舟

刚才用jQuery 做了一个ul 放了4个li里面有input按钮,$(this).parents("li")可以取到你点击的对应的父元素li标签,会不会是jQuery版本问题?
或者是您li里镶嵌li标签了?

要是都没问题的话。用你的li对应的id做显示和删除。
var index = $(this).parents('li').index()+1;
$("#touch"+index).css('display','none');

高洛峰

这样的场景可以考虑OOP,把每条数据抽象成对象,对象有个删除按钮,点击后隐藏自己,每个li对应一个实例。这样就不用查找父元素了。

阿神
var $li = $('.min_delete').closest('li'),
    $otherLi = $li.siblings('li');
$li.remove();
$otherLi.css('background','red');
ringa_lee

用jq click 事件试了一下没问题,换jqm tap事件出现问题,感觉应该是jqm 的tap的问题 给hide设了个setTimeout 大约300ms解决了,不过解决方式很水,同求大神们指点

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号