2011-01-22 4 views
2

私は何かをしない場合単純なモーダルでそれをロードする "#スーパー"と呼ばれるdivがある場合、このような何かをしようとしています。私は自分のスキルでこれを行うことができました.Dは無です。#スーパーが存在する場合はモーダルをロードしますが、ロードするかどうかは関係ありません。私はjqueryの絶対的なnoobだと助けてください。jquery単純なモーダルヘルプのウィンドウの負荷

if($('super')){ $("#super").modal({onOpen: function (dialog) { 

    dialog.overlay.fadeIn('slow', function() { 
     dialog.container.slideDown('slow', function() { 
      dialog.data.fadeIn('slow'); 
     }); 
    }); 
}}); 

私は問題はjQueryの関数は常に偽ではないjQueryオブジェクトを返すので、このチェック

if($('#super')) 

は常に、trueを返しますですlink text

答えて

2

#superが存在しない場合は、何も起こりません。したがって、以下はあなたのニーズに合っているはずです:

$("#super").modal({onOpen: function (dialog) { 
    dialog.overlay.fadeIn('slow', function() { 
     dialog.container.slideDown('slow', function() { 
      dialog.data.fadeIn('slow'); 
     }); 
    }); 
}); 
+0

これは私より良い答えです。 –

+0

ありがとう:)しかし、私はまだエラーが発生しています:) – Andy

+0

#superを#superbasに変更したり、div #superが存在しない場合は何も表示しないようにする必要がある場合は、空白のモーダルウィンドウとして読み込みますhtml :) – Andy

0

プラグインこのjqueryのを使用しています値。

代わりに、私はそれはあなたがいる場合/他の条件で、やって、何かが存在するかどうかをテストしたいことは何か非常にわからないんだけど、この

if($('#super').length > 0) 
1

を試してみてください。

if ($('#super').length) { 
    // it exists, do stuff 
} 
else { 
    // it doesn't exist, do other stuff. Or nothing 
} 

私はもっと具体的にはできませんが、私はdialog/modalプラグインで作業していません。