看jquery源码有必要学习sizzle选择器么

 我来答
悉心且如意的小工匠6791
2017-06-20 · TA获得超过2567个赞
知道小有建树答主
回答量:4686
采纳率:19%
帮助的人:865万
展开全部
通过创建一个div元素,检测被传入的fn是否被当前浏览器支持
function assert( fn ) {
var div = document.createElement("div");
//此处用try-catch的原因是:被传入的fn很有可能是会报错的。因为fn中用的方法或属性很可能不被当前浏览器所支持。
try {
// 尝试执行被传入的方法,并将结果返回,如果出错则走catch,直接返回false(当前方法不被支持)
return !!fn( div );
} catch (e) {
return false;
} finally {
// 如果被创建的div存在parentNode,则将当前div删除。
// 这里div看上去不可能有parentNode,因为感觉它没有被插入DOM树。但由于被传入的函数fn很有可能会将这个div插入DOM树,所有必须执行此操作。
if ( div.parentNode ) {
div.parentNode.removeChild( div );
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式