在Mootools中,我只需要运行if ($('target')){…}。if ($('#target')){…}在jQuery的工作方式相同?
当前回答
if ($('#elem')[0]) {
// do stuff
}
其他回答
我更喜欢
if (jQuery("#anyElement").is("*")){...}
它基本上检查这个元素是否是一种“*”(任何元素)。 更简洁的语法,is在if中更有意义
不,无论选择器是否匹配,jquery总是返回一个jquery对象。 你需要使用。length
if ( $('#someDiv').length ){
}
首先创建一个函数:
$.fn.is_exists = function(){ return document.getElementById(selector) }
then
if($(selector).is_exists()){ ... }
正如其他评论者所建议的,最有效的方法似乎是:
if ($(selector).length ) {
// Do something
}
如果你绝对必须有一个exists()函数-这会比较慢-你可以这样做:
jQuery.fn.exists = function(){return this.length>0;}
然后在代码中使用
if ($(selector).exists()) {
// Do something
}
如这里所回答的
对我来说,.exists不起作用,所以我使用索引:
if ($("#elem").index() ! = -1) {}
推荐文章
- 如何修改标签文本?
- 如何获得十六进制颜色值而不是RGB值?
- 字符串strip() JavaScript?
- 如何将一个标题转换为jQuery的URL段塞?
- 获取对象的第一个索引
- 我如何用javascript编程点击链接?
- JavaScript:客户端验证与服务器端验证
- React钩子:从回调中访问最新状态
- 使用lodash将对象转换为数组
- $(window).width()与媒体查询不一样
- AJAX请求中的内容类型和数据类型是什么?
- 打印在 JsFiddle 中
- AngularJS只适用于单页应用程序吗?
- Javascript和regex:分割字符串并保留分隔符
- 如何检查DST(日光节约时间)是否有效,如果是,偏移量?