2012-11-23 69 views
0

有問題在這裏。這應該是工作。我在HTML中具有4個元素是這個樣子如果有班級刪除班級並添加班級

<!-- Light Color Scheme - Header False and Show Faces True --> 
     <div class="fb-like-box h-f_dsf-t visible" data-href="http://www.facebook.com/pages/Alpine-Adaptive-Scholarship-Program/344942928870040?fref=ts" data-width="292" data-show-faces="true" data-stream="true" data-header="false" colorscheme="light"></div> 

雖然他們在不同的變化。所以人們可以將標題設爲真,並且顯示真人臉,並且唯一的類將是「.h-t_dsf-t」。 JavaScript應該在它們之間選擇,並告訴哪一個是活動的,哪一個不是。因此,一次只有一個具有.visible類,其他類具有.invisible類。

在此先感謝!

我的Javascript對於顯示面孔按鈕(注意.sf-no.click中沒有任何內容,但它將在未來我只是試圖讓它爲yes按鈕工作。 )

// Show Faces 
$(document).ready(function() { 
    $('.sf-yes').click(
     function() { 
      $('.sf-yes').removeClass('btn-not-active btn-active').addClass('btn-active'); 
      $('.sf-no').removeClass('btn-not-active btn-active').addClass('btn-not-active'); 
      // Show Faces Yes &&& Show Header No 
      if ($('.sf-yes.sh-no').hasClass('.btn-active')) { 
       $('.h-f_dsf-t').removeClass('.invisible').addClass('.visible'); 
       $('.visible').removeClass('.visible').addClass('.invisible'); 
      } 
      // Show Faces Yes &&& Show Header Yes 
      if ($('.sf-yes.sh-yes').hasClass('.btn-active')) { 
       $('.visible').removeClass('.visible').addClass('.invisible'); 
       $('.h-t_dsf-t').removeClass('.invisible').addClass('.visible'); 
      } 
      // Show Faces No &&& Show Header Yes 
      if ($('.sf-no.sh-yes').hasClass('.btn-active')) { 
       $('.visible').removeClass('.visible').addClass('.invisible'); 
       $('.h-t_dsf-f').removeClass('.invisible').addClass('.visible'); 
      } 
      // Show Faces No &&& Show Header No 
      if ($('.sf-no.sh-no').hasClass('.btn-active')) { 
       $('.visible').removeClass('.visible').addClass('.invisible'); 
       $('.h-f_dsf-f').removeClass('.invisible').addClass('.visible'); 
      } 
     } 
    ); 
    $('.sf-no').click(
     function() { 
      $('.sf-no').removeClass('btn-not-active btn-active').addClass('btn-active'); 
      $('.sf-yes').removeClass('btn-not-active btn-active').addClass('btn-not-active'); 
     } 
    ); 
}); 

回答

4

.hasClass('.btn-active')

應該是

.hasClass('btn-active')

無點.

+0

仍然不能正常工作http://pastebin.com/wQpFEcEH – kevingilbert100

+0

@ user1844077很難理解你想要做什麼。這是我見過的唯一的錯誤。如果它仍然不起作用,那麼存在一些邏輯錯誤。嘗試在jsfiddle中重現它。 –

2

您的包含的代碼存在一些問題。當你刪除一個班級或添加一個班級時,你不應該包含完整的停車場。 .您已在.hasClassremoveClassaddClass上完成此操作。

此外,您的條件語句似乎是相互矛盾的。也許你的意思是說你的意思,但我認爲包含類.sf-yes.sh-no的元素是兩個不同的元素。你的jQuery語句正在尋找具有這兩個類的元素。

使用類的選擇器不是最佳做法也不值得,而且您應該使用唯一標識,例如#sf-yes。或者,如果您必須使用多個類選擇器,則在函數調用開始時將每個選擇器分配給一個變量。

最後,我不認爲你應該把這個標記爲Facebook問題,因爲你的代碼是專門針對jQuery的。