调整大小浏览器时如何获取选定的div宽度

时间:2014-05-25 15:27:35

标签: javascript jquery jquery-ui-resizable

我想根据以下算法选择div宽度:

  1. 如果用户调整浏览器大小,则根据调整大小的浏览器div获取div宽度。

  2. 如果用户没有调整浏览器大小,请正常获取div宽度。

  3. 这是我的代码

    jQuery(document).ready(function($) {
    
        if ($(window).resize) {
            var width = $('#main_header .wrapper').width($(window).resize);
        }
        else {
            var width = $('#main_header .wrapper').width;
        }
    
    });
    

    我的代码不起作用,请,任何人都可以帮我解决这个问题。感谢

2 个答案:

答案 0 :(得分:1)

您使用if是个问题。试试这个:

jQuery(document).ready(function($) {
  $(window).resize(function() {
    alert("$('#main_header .wrapper').width());
  })
});

$(window).resize始终返回true,因为resize是一个jQuery函数。此代码会监视window resize事件,并在内部函数发生时调用它。

我没有填写内部函数,因为我不清楚调整大小时你想要发生什么。

答案 1 :(得分:1)

这个小函数将获得#main_header .wrapper的宽度并在调整大小时更新它:

$(function() {
    var $wrapper = $('#main_header .wrapper');//the element we want to measure
    var wrapperWidth = $wrapper.width();//get its width    
    $wrapper.text(wrapperWidth);//dunno what you want to do with wrapperWidth but here im setting it as the text of .wrapper just so you can see the value changing
    //add resize listener
    $(window).resize(function() {
        wrapperWidth = $wrapper.width();//re-get the width
        $wrapper.text(wrapperWidth);//update the text value
    });
});

这是一个有效的演示:http://jsfiddle.net/5rZ4A/