特定の条件が満たされた場合に関数を中断しようとしています (要素にクラスがあり、このクラスが動的に追加および削除される)
コード:
this.buildMainToolsBar = function(options,display){
var all = options.all || null,
$mainToolsBarRef = $('#mainToolsBar'),
$disabledTools = $('#mainToolFill, #mainToolStrokeStyle, #mainToolStrokeColour');
if($disabledTools.hasClass('toolDisabled1')) {
return;
}else{
$('form [id^=mainTool] > .toolInfo, form [id^=mainTool] > .navDown',$mainToolsBarRef).hover(function(){
$(this).parents('div[id^=mainTool]:not([id=mainToolsBar]):first').addClass('toolHover');
},function(){
$(this).parents('div[id^=mainTool]:not([id=mainToolsBar]):first').removeClass('toolHover');
});
}
クラス toolDisabled1 は、特定の要素をクリックしたときにのみ表示されます。問題は、toolDisabled1 が見つかる前でも条件が true を返していることです。
それ以外の:
return;
私も試しました:
$disabledTools.removeClass('toolHover');
機能を壊そうとする。
私も試しました
('$disabledTools[class=toolDisabled1]').removeClass('toolHover');
toolDisabled1 クラスが追加されたことを動的に検出して関数から戻るにはどうすればよいですか?
さらにコードが必要な場合は、これが明確であることを願っています。