此代码有效:
$(contentDiv).fadeIn("slow");
这不是:
var elementName = 'contentDiv';
$(elementName).fadeIn("slow");
不会出现淡入淡出效果。
我想知道这个解决方案我是个白痴,但是我无法解决这个问题。
答案 0 :(得分:2)
您需要指定'contentDiv'是类还是 id
var elementName = '.contentDiv';
$(elementName).fadeIn("slow");
OR
var elementName = '#contentDiv';
$(elementName).fadeIn("slow");
答案 1 :(得分:1)
如果"contentDiv"
是您元素的name
,那么您需要使用:
$("[name=" + elementName + "]").fadeIn("slow");
如果是id
,则需要使用:
$("#" + elementName).fadeIn("slow");
答案 2 :(得分:1)
您需要在字符串前面加上选择器的其余部分。如果contentDiv
是id
,则为#
:
$("#" + elementName").fadeIn("slow");
如果它实际上是name
属性的值,则需要将其插入attribute selector:
$("[name='" + elementName + "']").fadeIn("slow");
如果contentDiv
是其他东西(也许是一个类),则需要适当地更改选择器。关于selectors in the jQuery docs的部分将是一个很好的起点。
您目前拥有的内容将寻找“contentDiv”类型的元素,这不是您想要的:
<contentDiv>This is an invalid element...</contentDiv>
答案 3 :(得分:1)
contentDiv
不是标记/元素。您忘记为选择器指定id
或class
:
var elementName = '#contentDiv';
或者
var elementName = '.contentDiv';
取决于您是否为您的div使用class
或id
。
答案 4 :(得分:1)
var elementName = '#contentDiv';
$(elementName).fadeIn("slow");
#
是原因。
答案 5 :(得分:1)
此代码有效:
$(contentDiv).fadeIn( “慢”);
除非您使用的是Internet Explorer ,否则它不应该有效。 IE有一个讨厌的习惯,即为具有ID的HTML元素创建变量。 (编辑:chrome似乎也这样做。)
连接方式是:
var elementName = "contentDiv";
$("#" + elementName).fadeIn("slow");