2017-02-24 13 views
0

div(#schedule)が最初に無効に設定されている場合、この関数を呼び出すことはできません。divが表示されているときのJqueryコール関数

function enable_create_btn(){ 
    if($('#schedule').is(":visible")) { 
     $("#create_btn").prop('disabled', false); 
    } 
    else { 
     $("#create_btn").prop('disabled', true); 
    } 
} 

それはショーのイベントでトリガとdiv要素は、外部プラグイン追加せずに見えるようになっているときに、この関数を呼び出すことは可能です

+1

投稿してください[mcve] – j08691

+0

あなたはこのようなものを探しているようです。[http://stackoverflow.com/questions/ 1397251 /イベント検出時のCSSプロパティの変更を使用したjquery#answer-1397500](http://stackoverflow.com/questions/1397251/event-detect-when-css-property-changed-using-jquery #answer-1397500) – psycho

+0

これは目標を達成します:http://stackoverflow.com/a/16462443/693275 –

答えて

0

visibility属性への変更を検出するためのmutationObserverを使用してみてください(のようなthisソリューションを?):

var target = $('#schedule'); 
    var observer = new MutationObserver(function(mutations) { 
     mutations.forEach(function(){ 
      //do stuff here 
     }); 

     observer.observe(target, { 
      attributes: true 
     }); 
    } 

しかし、あなたが可視性を制御している場合、この解決策は私の意見では残念です。より良いアプローチは、あなたが変更した同じ場所の変更にちょうど反応することですvisibility

+0

mutationObserverはデバッグ目的のためのものです – scraaappy

関連する問題