问题描述
|
我有带说明的物品清单。在列表中,我显示了带有锚标签和生成的href的描述片段。锚标签下方是一个隐藏的div,其中包含完整的描述,我想在其中显示它:
<ul id=\"op_list\">
<cfloop query=\"session.data\">
<li><p class=\"op_desc\"><cfoutput>#Mid(title,1,26 )#</cfoutput>…
<a class=\"viewitem\" href=\"listings.cfm#item<cfoutput>#item_id#</cfoutput>\">More Info</a></p>
<div style=\"display:none;\">
<div id=\"item<cfoutput>#item_id#</cfoutput>\">
<h2><cfoutput>#title#</cfoutput></h2>
<p><cfoutput>#description#</cfoutput></p>
</div>
</div>
</li>
</cfloop>
</ul>
然后,我有了一些jQuery(位于document.ready()函数内部),该jQuery应该会触发带有完整项目描述的fancybox,但不会触发fancybox。这是我的jQuery:
$(\'.viewitem\').live(\'click\',function(e){
e.preventDefault();
var theDiv = \'#\' + this.hash.substr(1);
alert(theDiv);
$(theDiv).fancybox({
\'titleShow\' : false,\'transitionIn\' : \'elastic\',\'transitionOut\' : \'elastic\'
});
});
我在哪里错了。如果我编写了代码,则可以启动fancybox,因此我知道fancybox已连接并且可以正常工作。另外,警报也会生成适当的代码,因此我知道它也可以工作。
我在这里错过了什么简单的事情?
解决方法
答案在于我如何形成jQuery fancybox函数。这是正确的代码...
$(\'.viewitem\').live(\'click\',function(){
$.fancybox({
\'href\' : \'#\' + this.hash.substr(1)
});
return false;
});