jquery cluetip在多次加载时中断

时间:2010-09-13 18:15:19

标签: jquery loaded cluetip

我在门户网站环境中使用jQuery cluetip插件,门户网站页面上可以有多个portlet实例。每个portlet都是它自己的应用程序,因此它对其他portlet一无所知。每个portlet都需要使用cluetip插件,因此它会在需要时加载它。问题是,当cluetip脚本多次加载时,会产生以下错误:

$cluetip is undefined

我知道一个可能的解决方案是检查插件是否已经加载,但我尝试过的每次检查都失败了。我试过了:

if(jQuery.cluetip), if(jQuery().cluetip), if(jQuery.fn.cluetip), if(jQuery().fn.cluetip)

并且它们都不起作用。他们都返回undefined。

如何检查插件是否已加载?或者,我可以实施另一种解决方案吗?

2 个答案:

答案 0 :(得分:0)

您是否在文档就绪功能中使用了cluetip?

$(function() {
  $('a.tips').cluetip();
});

根据您在上面发布的代码,您似乎没有正确使用cluetip。您真的不需要检查插件是否已加载。如果您的标题中有脚本:

<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.cluetip.js" type="text/javascript"></script>

然后你只需要在上面的例子中选择你想要提示的内容('a.tips'),它应该可以正常工作。

如果您发布Javascript和HTML,我可以为您提供更好的答案。

答案 1 :(得分:0)

查看来自cuetip网站的来源:

<script type="text/javascript">
$(document).ready(function() {
  $('a.tips').cluetip();

  $('#houdini').cluetip({
    splitTitle: '|', // use the invoking element's title attribute to populate the clueTip...
                     // ...and split the contents into separate divs where there is a "|"
    showTitle: false // hide the clueTip's heading
  });
});
</script>
<link rel="stylesheet" href="jquery.cluetip.css" type="text/css" />

需要注意的是,加载的第一件事是jQuery.js,然后是cuetip。

确保你的html看起来一样,并确保cuetip AND jQuery正常加载。