javascript - get wrong value when window resize -


first, window width , minus assign variable,

second, resize window , want value current window width minus something

but wrong value, alert 2 value 1 right , wrong,i not know why , how fix it, me, thx

my html code

<p class="test">click me value</p> 

js

(function(){  test();  $(window).resize(function(){ test(); });  }());    function test() {     var t = $(window).width()-74;     alert('one ' +t);     $(document).on('click', '.test',{t: t}, get); } function get(event) {     var l = event.data.t     alert('two ' +l) } 

the fiddle version http://jsfiddle.net/dxcqcv/xetbhwpv/1/

i not sure values expecting get, take @ resize function documentation on jquery api:

http://api.jquery.com/resize/

code in resize handler should never rely on number of times handler called. depending on implementation, resize events can sent continuously resizing in progress (the typical behavior in internet explorer , webkit-based browsers such safari , chrome), or once @ end of resize operation (the typical behavior in other browsers such opera).

as can see, browsers call resize @ end of resizing, other keep calling function on process of resizing. means different values call when not resizing , while in resizing operation.

i made changes code in order become cleaner. please take @ jsfiddle using developer console (press f12 on browsers):

http://jsfiddle.net/xetbhwpv/7/

$(document).ready(function(){     test();     $(window).resize(function(){         test();     }); });  function test() {     var t = $(window).width() - 74;     console.log('one ' + t);     $('.test').off('click');     $('.test').on('click', {t: t}, getinfo); } function getinfo(event) {     var l = event.data.t     console.log('two ' +l) } 

as can see now, last two xx messages equal last resize messages.


Comments

Popular posts from this blog

ruby on rails - RuntimeError: Circular dependency detected while autoloading constant - ActiveAdmin.register Role -

c++ - OpenMP unpredictable overhead -

javascript - Wordpress slider, not displayed 100% width -