为什么我的overlay jquery代码会出现此错误?
这是代码:
jQuery(document).ready(function($) {
// if the function argument is given to overlay,
// it is assumed to be the onBeforeLoad event listener
$("a[rel]").overlay({
mask: 'darkred',
effect: 'apple',
onBeforeLoad: function() {
// grab wrapper element inside content
var wrap = this.getOverlay().find(".contentWrap");
// load the page specified in the trigger
wrap.load(this.getTrigger().attr("href"));
}
});
});
此代码是这样的叠加层:http://flowplayer.org/tools/demos/overlay/external.html
HALP?
PS。抱歉我的英语不好。
答案 0 :(得分:4)
“无法找到叠加:nofollow”是由于使用非特定的css选择器来查找要将叠加层附加到的链接。
正确包含javascript是对最初问题的正确答案...我来到这个页面基于覆盖:评论中的nofollow问题....因为这是我发现的第一件事并且没有找到我想在这里评论一个答案,因为我发现它是由css选择器发现...的其他用途引起的,并且没有nofollow覆盖...
假设'overlay'是div的id,如下所示:
<!-- overlayed element -->
<div class="apple_overlay" id="overlay">
< !-- the external content is loaded inside this tag -- >
<div class="contentWrap"></div>
</div>
你应该做的事情如下:
$("a[rel=#overlay]").overlay(
而不是:
$("a[rel]").overlay(
答案 1 :(得分:2)
在jQuery将其视为对象的一部分之前,您需要加载overlay
插件;见下文。
注意:插件必须在jQuery脚本之后
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script src="http://cdn.jquerytools.org/1.2.6/all/jquery.tools.min.js"></script>
答案 2 :(得分:1)
遇到同样的问题,发现了一个非常奇怪的解决方案。 我只是以这种方式将jquery.tools 包含在 jquery.ui之前:
<script src='js/jquery-1.4.2.min.js' type='text/javascript'></script>
<script src='js/jquery.tools.min.js' type='text/javascript'></script>
<script src='js/jquery-ui-1.7.2.custom.min.js' type='text/javascript'></script>
这就是全部。不知道为什么它现在有效,但它确实起作用。
答案 3 :(得分:0)
您是否在页面中添加了覆盖脚本src?