2017-09-22 22 views
3

我目前正在尝试使用jQuery执行效果。但是,我不想做任何事情,比如$("#something").hide(),我想在字符串中指定效果。这里有一个例子:由字符串指定的执行效果

var selector = "#myElement"; 
var effectString = "hide"; 
$(selector).effect(effectString); 

我看着这个代码了,显然它确实工作方式,但由于某些原因,effect()方法似乎已被删除。

我的问题是,如果有任何替代,我可以使用。或者像这样的功能被故意删除?我正在使用jquery-3.2.1。

在此先感谢您的任何帮助的想法。

回答

6

作为到选择器的响应是一个对象,则可以使用括号标记使用可变访问方法名称和调用它们,像这样:

var selector = "#myElement"; 
 
var effectString = "hide"; 
 
$(selector)[effectString]();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div> 
 
    Part of this <span id="myElement">string</span> will be hidden 
 
</div>