对于题主的提问,有人提供了以下两个比较有意思的方法,其中一个是:document.body.contains(element),这里面用到了node.contains(othernode)方法,它可以判断othernode是不是node的后代,并返回一个布尔值。
具体用法可以这么写:
其实,用这个方法可以写一个通用的函数来判断某个元素节点是否在某个页面上,大家可以参考下Mozilla Developer Network官网javascript手册上的代码:
上面代码中aNode.ownerDocument是个只读属性,它返回aNode所在页面的顶级文档对象document。
另外有人还提到了这个方法:判断元素节点的baseURI是否存在。jsp api文档
baseURI是个只读属性,node.baseURI返回node节点的绝对的基准url地址(我把它理解为页面的绝对url地址),比如$('#a')[0].baseURI,
我在chrome下试了下,#a元素存在的话就会返回一个url字符串,不存在的话报undefined错误(#a不存在自然会报这个错误),感觉这个方法在实际应用中不太好操作,要抛出和捕捉错误,感兴趣的同学可以研究下。
How to check if element exists in the visible DOM这个问答的发起者自己写了个方法,我把代码贴到下面:
注意代码中的isNull函数,它是用来判断元素是否存在的,这个方法其实是依据元素的id是否为null来判断,思路好像和用baseURI来判断是相同的。我试了下,当元素存在时返回true,
但当元素不存在时,它会报undefined错误,感兴趣的同学可以研究下。
总结:
其实判断一个元素是否存在,用getElementById()(或其他选择元素的方法)再配合是否为null来判断,或用jQuery获取对象并判断其length,简单又直接。
但如果想判断一个元素是否在当前实时可见的dom中,那就用node.contains(othernode)方法。
参考:
1,How to check if element exists in the visible DOM
2,What does jquery $ actually return
2,Node.contains()
3,Node.ownerDocument
4,How to get a DOM Element from a JQuery Selector
5,https://api.jquery.com/get/
6,baseURI
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持梦搏网络!
基于jQuery实现数字滚动效果
[8657]
滚动方向:上下

源代码下载
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持梦搏网络!
jQuery无刷新上传之uploadify简单代码
[8656]
先简单的侃两句:貌似已经有两个月的时间没有写过文章了,不过仍会像以前那样每天至少有一至两个小时是泡在园子里看各位大神的文章。前些天在研究“ajax无刷新上传”方面的一些插件,用SWFUpload实现了无刷新上传的功能,不过个人觉得不是很完美。
昨天在网上找到了一个叫做uploadify的jquery上传插件,看到园子里有几篇文章也是介绍这个插件的,心想何不用这个试试。

不过园子里的这几篇文章用到的uploadify还是以前的旧版本uploadify-v2.1.0,我在官网上下载的是uploadify-v3.1版,其中的一些参数以及调用方法也不同了,还好官网有帮助文档。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-85553-2.html
拿你马去投资
只要进入12海里
难道我做出的产品会把不合格的送去质检局检测