zrssfeed JQUery在IE 9上崩溃,强行关闭

ZRSSFeed
JQuery如果独立工作正常,但是一旦我把它放在带有JQuery选项卡的iFrame中,它就会崩溃. (我以为iFrame不应该有JQuery冲突?)

你可以看看这里:
http://jsfiddle.net/VMfXr/

只需将URL复制并粘贴到IE,它就会强制我的IE 9关闭.感谢是否有任何帮助.

或以下代码:

<div class="widget_container"> <div class="widget_container_inner">
            <ul class='tabs'>
                <li><a href="#tab1">Tab1</a></li>
                <li><a href="#tab2">Tab2</a></li>
                <li><a href="#tab3">JQuery Blog</a></li>
            </ul>
            <div id='tab1'>
            <Script>window.console && console.log('tab1');</script></div>
            <div id='tab2'>
            <Script>window.console && console.log('tab2');</script>
            </div>
            <div id='tab3'> <Script>window.console && console.log('tab3');</script>
                <iFrame src="http://www.iframeURL.com" style="width:320px; height:330px; overflow:hidden" frameborder="0" scrolling="no"></iFrame>
            </div>
        </div> </div>

<script type="text/javascript">     
        jQuery.noConflict();
        (function($) {                                           
           jQuery(document).ready(function($) {         
               jQuery('ul.tabs').each(function(){           
                   var $active, $content, $links = $(this).find('a');
                   $active = $($links.filter('[href="'+location.hash+'"]')[0] || $links[0]);            
                   $active.addClass('active');          
                   $content = $($active.attr('href'));

               $links.not($active).each(function () {
                $($(this).attr('href')).hide();             });

            jQuery(this).on('click', 'a', function(e){
                $active.removeClass('active');
                $content.hide();
                $active = $(this);
                $content = $($(this).attr('href'));
                $active.addClass('active');
                $content.show();
                e.preventDefault();             
                     });        
                 });    
            }); 
       })(jQuery); </script>

谢谢,

最佳答案 这是您在隐藏时在iframe中运行的jquery.vticker.js文件的结果.这似乎是IE9中最近更新的一个错误.发生的事情是IE正在获取访问冲突,这可能是垃圾收集器在隐藏的i帧上无法正常工作的结果.无论如何,要修复该错误,您可以注释掉
http://www.sp.edu.sg/schools/dmit/widgets/ticker/blog/blog_widget_dbit.html引用的jquery.vticker.js中的以下代码行.

obj.children('ul').children('li').each(function() {
    $(this).height(maxHeight);
});

obj.height(maxHeight * options.showItems);

这似乎与Microsoft KB2761451有关,这是2012年11月13日发布的安全更新.

点赞