【问题标题】:jquery + ie7 = undefined [duplicate]jquery + ie7 =未定义[重复]
【发布时间】:2011-12-23 08:32:21
【问题描述】:

我在使用 jquery 的 ie7 中遇到了奇怪的问题。该问题仅出现在 IE7 中。简而言之(ie9 兼容性转向 ie7)控制台窗口显示未定义 jQuery - 但是加载了 jQuery(1.7.1)(从磁盘而不是 cdn),我可以从 IE 的调试窗口中查看它。

你可以在这里查看页面:
http://karolwasik.pl/works/familypark/

只有几行代码js与默认的html5样板包(如modernizr)一起使用,我也使用了jQuery Cycle Plugin。

这几行是(所以你可以看到额外的昏迷不是问题;)):

/* Author: karolwasik.pl */
$(function(){

$('#batonP').on('click',function(e){
    e.preventDefault()
    h = $('#subpC .slajdM').height()
    log(h)
    log($(this))
    if(h!==633){
        $('#subpC .slajdM').stop().animate({'height': 633}, 150)
        $(this).removeClass('nieaktywny').addClass('aktywny')
    } else {
        $('#subpC .slajdM').stop().animate({'height': 233}, 150)
        $(this).removeClass('aktywny').addClass('nieaktywny')
    }
})
if($('#frontnav').length){
    fv = $('#frontnav').find('li').get()
    //$('#frontnav').html('')
    $('#mainC').cycle({ 
        fx:     'fade', 
        speed:  1000, 
        timeout: 0,
        next: '.nextS',
        pager: '#frontnav',
        pagerAnchorBuilder: function(idx, slide) {  
            return $(fv[idx]); 
        }    
    }); 
}
})

【问题讨论】:

    标签: javascript jquery internet-explorer internet-explorer-7


    【解决方案1】:

    您已经在页脚之后导入了所有这些文件。

    <!-- scripts concatenated and minified via ant build script-->
      <script defer src="js/libs/jquery-1.7.1.min.js"></script>  
      <script defer src="js/libs/jquery.cycle.all.js"></script>  
      <script defer src="js/plugins.js"></script>
      <script defer src="js/script.js"></script>
      <!-- end scripts-->
    

    Modernizr 一开始就在那里。我建议移动标题上的所有脚本。尝试将modernizr保持在上述脚本的底部或中间并检查它是否有效。

    【讨论】:

    • 不,这不是问题。我也明白为什么要移动modernizr,应该首先加载modernizr,最后加载jquery和rest(这就是为什么在它们上使用defer;))
    • 哦,我明白了。但因此页面上没有错误,并且 JQuery 应该可以很好地呈现......我会尽快回复你。
    猜你喜欢
    • 2018-09-21
    • 2016-10-27
    • 2015-07-13
    • 2016-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多