1

私はCSSに.lessを使用しています。私が抱えている問題は、Jqueryが.lessファイルを解析するために.lessが終了する前に実行されるため、高さと幅が正しくないことです。

ここで、500ミリセンコンドのsetTimeoutを「待機」に設定しました。.lessにjqueryのものを開始するためのコールバック機能はありますか?

ありがとう

jQuery(function($){
   var m = $('.my-class').height();
   var wh = $(window).height();

   if(wh > m){
      $('.my-class').addClass('.new-class').height(wh - 300);
   }
});

私はそれを機能させるためにこれをしなければなりません:

jQuery(function($){
   var m = $('.my-class').height();
   var wh = $(window).height();

   setTimeout(function(){
      if(wh > m){
         $('.my-class').addClass('.new-class').height(wh - 300);
      }
   }, 500);
});
4

1 に答える 1

2

.less が実行されている可能性が最も高いものは何でも、jQuery .ready() イベントを使用できます。したがって、.less がスタイリングされている段落がある場合は、次のようなことができます$("p").ready(function() { //do something });。それがうまくいかない場合は、いつでも .resize() イベントを試すことができます。これは、少ないスタイリングが完了したときに要素のサイズを変更する必要があるためです。たとえば、次のようなことができます$("p").resize(function() { //do something now that the size has changed });

ドキュメンテーション:

于 2013-01-11T20:02:42.740 に答える