jquery – FancyBox iframe返回父项$as undefined(使用WordPress)

前端之家收集整理的这篇文章主要介绍了jquery – FancyBox iframe返回父项$as undefined(使用WordPress)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图关闭 FancyBox从iframe,但父母.$总是未定义.
这是我的iframe JavaScript:
<script type='text/javascript' 
  src='http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js'>
 </script>
 <script type="text/javascript">
 jQuery(document).ready(function($){
     (function($) {
         $.fn.closefancybox = function() {
             $(this).click(function() {
                 parent.$.fancybox.close();
             });
         };
      })(jQuery);
      $('#cancel').closefancybox();
      });
 });
 </script>

替换父项$.fancybox.close();带有警报(“点击”);工作很好我不明白为什么父对象在iframe位于同一个域时是未定义的.

我正在使用wordpress 2.9.1,带有fancybox for wordpress插件.

>主页://server.local/web/test/index.PHP
> iframe页面://server.local/web/test/wp-content/plugins/wp-test/test.htm

这些URL中的第一个是主页面,第二个是iframe页面; server.local是我的家庭测试服务器.

有任何想法吗?我可以粘贴整个源,如果它是有帮助的.

解决方法

它是未定义的,因为wordpressnoConflict模式下运行jQuery.改用:
parent.jQuery.fancybox.close();

noConflict模式意味着$不等于jQuery.你必须明确地使用jQuery访问你通常可以用$访问.

原文链接:https://www.f2er.com/jquery/176086.html

猜你在找的jQuery相关文章