2017-12-12 4 views
0

私はブーリアン変数を見ていました。私のプログラムでは、mutexSelectの値を "true"に設定しています。値がtrueの場合、makeIntoSelect関数を以下のように呼び出す必要があります。JavaScriptは変数を継続的にチェックします

(here I want to declare to watch muteSelect value continuously){ 
    if (mutexSelect == true) { 
     mutexSelect = false; 
     makeIntoSelect(newSelectedItem); 
    } 
}); 

どのようにmutexSelectの値を連続して確認できますか? ありがとう!

+2

変数を変更してチェックを続ける必要がない場合は、メッセージをトリガーすることをお勧めします。 – epascarello

+0

あなたは[websockets](https://www.tutorialspoint.com/html5/html5_websocket.htm)を使用するべきです –

+0

'setInterval'と' ajax'を組み合わせるとどうでしょう – Pedram

答えて

0

このソリューションは、ダクトテープを使用して、実際に交換部品が必要なものを修正するようなものです。変数が更新されたときにメッセージをトリガするのが最善の解決策です。あなたがどのように更新されるのか分からないので、私はあなたに良い解決策を与えることはできません。しかし、MDN Docsでは、カスタムイベントをトリガする方法を示すことができます。

あなたの唯一の他の選択肢は何ですか?間隔を使用して、それが反転されているかどうかを確認する。

window.setInterval(function(){ 
    if (mutexSelect == true) { 
    mutexSelect = false; 
    makeIntoSelect(newSelectedItem); 
    } 
},10) 
+0

はい、これはまさに私が使用できるものです!しかし、私はMDN Docsを見るつもりです。たぶん私はある間隔よりも良いトリガーを見つけることができたかもしれない。どうもありがとうございました! – MustafaSalih

0

jQuery setInterval関数を使用できます。この関数は、コードをその関数の中に置くことができるように、一定の間隔で連続的にトリガします。

jQuery SetInterval

setInterval(function(){ 
    if (mutexSelect == true) { 
     mutexSelect = false; 
     makeIntoSelect(newSelectedItem); 
    } 
}, 1000); 

あなたはより頻繁にトリガするために、この機能を取得したいとコールバックの時間を更新します。 (つまり)値を1000から目的の値に変更します。

+0

setIntervalは** jQuery関数などではありません。 – FrankerZ

関連する問題