我有一个奇怪的jQuery问题。我正在编写一个接受字符串作为参数的函数,然后将该字符串输入jQuery选择器。

这是函数:

function myFunction(specialfields) {
   if(!$(specialfields).is(':focus')) {
       alert('thats not in focus');
   }
 }


但是,我不断收到此错误:

 Uncaught Syntax error, unrecognized expression: focus


但是,奇怪的是,'。is(':focus')'在不接受参数的情况下也可以在其他区域工作,如果我通过了这一点:

 $(specialfields)


它确实读取为有效对象。我正在尝试传递这样的字符串:

#id1, #id2


此外,这还可以:

$(specialfields).val()


有人知道这里发生了什么吗?

最佳答案

好的,我认为问题在于我将两个参数传递给“ specialfields”,这打破了':focus'选择器,因为显然您不能同时聚焦两个字段。

可以通过仅在函数中传递单个选择器来解决此问题。

08-28 12:02