2012-04-05 49 views
0

为脚本我在我工作的一部分,有以下几点:

loop 
if($(element).find(selector)) 
{ do stuff } 
else 
{ do other stuff } 
/loop 

的想法是,有两个这些元素的版本变得越来越流行,我需要区分它们(基于内容)以确定采取哪些操作。

如果找到成功,这很好用。如果不是,那么该脚本有一个致命错误。

我找不到任何有关查找失败时会发生什么的文档。我如何完成这项工作?

+0

'find'的空结果不应该破坏你的代码。你可以检查Firebug或Webkit控制台,并提供一个异常和线上的代码抛出它? – rjz 2012-04-05 04:04:48

+0

你可以发布你使用的真实代码吗? – 2012-04-05 04:04:57

+0

我从来没有从萤火虫中得到一个错误陈述,但显然它在尝试使用由选择器定义的元素时进入if和then错误。 – baiano 2012-04-05 05:09:54

回答

1

这个怎么样?

if($(element).find(selector).length > 0) 
{ do stuff } 

它有点长,但应该工作。

在我看来你的原始发现测试总是评估为真。测试长度会得到一个布尔结果来评估。

+0

已验证身在[jsfiddle](http://jsfiddle.net/FbKZe/) – 2012-04-05 04:09:04

+0

哦!但你可以保存***一个字符!!! ***:P'(!$(“#first”)。find(“img”)。length)'并且颠倒这些东西 – rlemon 2012-04-05 04:19:29

+0

我会保留我的角色和从我得到的清晰度:) – 2012-04-05 04:20:52

相关问题