功能工作窗口调整大小

时间:2012-05-17 11:25:32

标签: jquery html

这是我的代码

var bodyWidth = ($(document).width()/2);
console.log(bodyWidth);
$('.freeshipping').css('right',bodyWidth);

它很好,但我想工作这个功能体调整大小和页面刷新。怎么样?

4 个答案:

答案 0 :(得分:2)

$(window).resize(function(){
    var bodyWidth = ($(document).width()/2);
    console.log(bodyWidth);
    $('.freeshipping').css('right',bodyWidth);
});

UPDATE:调用一次函数:

$(window).resize((function(){
   var bodyWidth = ($(document).width()/2);
   console.log(bodyWidth);
   $('.freeshipping').css('right',bodyWidth);

   return arguments.callee;
})());​

答案 1 :(得分:1)

$(window).on('resize', function() {
   var bodyWidth = ($(document).width()/2);
   console.log(bodyWidth);
   $('.freeshipping').css('right',bodyWidth);
});

并且如果您还需要执行一次(没有显式调整大小操作)链接trigger()方法

$(window).on('resize', function() {
   var bodyWidth = ($(document).width()/2);
   console.log(bodyWidth);
   $('.freeshipping').css('right',bodyWidth);
}).trigger('resize');

因为您要定位DOM元素$('.freeshipping'),所以请务必将此代码段包装在domready事件

答案 2 :(得分:0)

试试这个

 $(window).resize(function() {
     var bodyWidth = ($(document).width()/2);
    console.log(bodyWidth);
    $('.freeshipping').css('right',bodyWidth);
    });

更多信息:http://api.jquery.com/resize/

答案 3 :(得分:0)

好的,所以每个人都回答了这个问题很好,但是! 这是另一个例子:

    //store temporarily the existing method
    var resize = $.fn.resize;

    //overwrite $(window).resize with your method
    $(window).resize(function () {

        //here you do your stuff
        stuff.setWidth(param);

        //call the original
        resize;
    });

不同之处在于您已经有一个$(window).resize(function () { /* ... */ });方法,您不想放松,只是为了扩展。 当我编写自己的jQuery插件时,我遇到了这个问题。我不得不考虑用户/开发人员添加的现有$(window).resize()方法。所以这样我保留它并运行我需要更新自己的插件的方法/函数。