【问题标题】:Jquery height() set using imagesloadedJquery height() 使用 imagesloaded 设置
【发布时间】:2013-01-27 17:05:34
【问题描述】:

我正在尝试将菜单的位置设置在动态生成高度的滑块下方,因此我使用imagesloaded 最后加载我的 jquery,并且在每个浏览器中一切都很好,除了 safari 检索在后端设置的滑块的高度,而不是根据页面大小动态生成的图像的高度。这仅在野生动物园中发生.... 这是定位菜单的javascript:

$.browser.safari = ($.browser.webkit && !(/chrome/.test(navigator.userAgent.toLowerCase())));
if ($.browser.safari) {
    $(window).load(function () {
        var $container = $('.ls-wp-fullwidth-container');
        $container.imagesLoaded(function () {
            var height = $(".ls-wp-fullwidth-container").height() - 50;
            $(".menu_wrap").css('top', height);
        });
    });
} else {
    $(window).load(function () {
        var $container = $('.ls-wp-fullwidth-container');
        $container.imagesLoaded(function () {
            var height = $(".ls-wp-fullwidth-helper").height();
            $(".menu_wrap").css('top', height);
        });
    });
}
$(window).resize(function () {
    var height = $(".ls-wp-fullwidth-container").height() + 40;
    $(".menu_wrap").css('top', height);
});

正在使用的滑块是任何滑块我正在使用名为 cleanspace 并运行 wordpress 3.5.1 的主题森林主题。 我试过用$(window).bind("load",function(){最后加载jquery和$.browser.safari = ($.browser.webkit && !(/chrome/.test(navigator.userAgent.toLowerCase()))); if ($.browser.safari) { 检测在 pc 上运行良好但在 mac 上失败的浏览器,所以我留下了粘贴在这里的第一个代码,并等待任何关于诱饵呼吸的帮助。 注意:如果 safari 会在滑块图像之后加载我的 jQuery,则不需要此处的 if 语句...

【问题讨论】:

  • 作为旁注,我相信 $.browser 实际上已被弃用,很可能是因为使用它被认为是一个糟糕的主意?
  • 谢谢@adeneo,我确实注意到了,我也试过if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) {alert('Its Safari');}

标签: javascript jquery


【解决方案1】:

我找到了一个解决方法,我猜它不是最好的答案,很高兴听到更好的建议,基本上我已经在函数上放置了一个计时器,如下所示:

if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome')     == -1) {
      $(window).load(function() {
           setTimeout(function(){
             var $container = $('.ls-wp-fullwidth-helper');
               $container.imagesLoaded( function() {
                  var height = $(".ls-wp-fullwidth-helper").height() ;
                  $(".menu_wrap").css('top', height);
               });
           }, 2000);
        });
       }
else {
      $(window).load(function() {
       var $container = $('.ls-wp-fullwidth-helper');
       $container.imagesLoaded( function() {
         var height = $(".ls-wp-fullwidth-helper").height();
         $(".menu_wrap").css('top', height);
       });
      });
     }
 $(window).resize(function(){
   var height = $(".ls-wp-fullwidth-helper").height() + 40;
   $(".menu_wrap").css('top', height);
 });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多