2017-10-20 10 views
0

JQueryのスニペットが変数名に保存されているため、ページに通知が作成されます。クラスが既にページに追加されている場合、html要素に関連付けられたクラスを変更しようとしています。これはWordPressプラグインで行われています。Javascript変数内にステートメントが保存されている場合

以下はオリジナルのものです。それ以下は、私の最初のスタブです。

noticeItemOuter = jQuery('<div></div>').addClass('notice-item-wrapper'); 

私の試み:

noticeItemOuter = if (JQuery(".notice-item-wrapper").length > 0) { 
       jQuery('<div></div>').addClass('notice-item-wrapper2'); 
      }else{ 
       jQuery('<div></div>').addClass('notice-item-wrapper');   
      } 

は、私がもしelse文の内側にコンソールログを追加し、それらがポップアップ見たことがありません。

+1

それは –

+0

あなたは*を意味するものではありませんまた、あなたのコードはあなたに 'Uncaught SyntaxError:Unexpected token if'を投げているはずです。 –

+0

* "**要素が**すでにページに追加された場合、" 'jQuery'は、' JQuery' –

答えて

-1

文はまさにそのように動作しませんが、同じように機能三項演算子を使用することができた場合は、(expression)? true statement: false statement;

noticeItemOuter = ((jQuery(".notice-item-wrapper").length > 0)? 
      jQuery('<div></div>').addClass('notice-item-wrapper2'): 
      jQuery('<div></div>').addClass('notice-item-wrapper'));   
+0

これは実際に私のために働いた。ありがとう@Wold – Denoteone

1

あなたはそのような変数を割り当てることが許されていません。どうしてこのようなことをしないのですか?

if (jQuery(".notice-item-wrapper").length > 0) { 
    noticeItemOuter = jQuery('<div></div>').addClass('notice-item-wrapper2'); 
} else { 
    noticeItemOuter = jQuery('<div></div>').addClass('notice-item-wrapper');   
} 
関連する問題