2014-04-17 69 views
0

編輯:.toggle()函數不工作

我已經改變爲以下,但仍然不能正常工作:

$(document).ready(function() { 
    $('.hide').hide(); 
    $('#bio1 a').click(function() 
    { 
     //Change case studies 
     $('#more1').toggle('slow'); 
    }); 

出於某種原因,我的jQuery的切換功能不起作用,雖然.hide()函數可以。我不確定是什麼問題,歡迎任何建議!

HTML:

   <h3><a>Some dude</a></h3> 
       <p>SOME TEXT 
        <br> <div id="bio1"> <a href="" > <i > <b> Read More </b> </i> </a> <br></div> 
        <div class="hide" id="more1"> SOME TEXT.</p></div> 

JAVASCRIPT:

$(document).ready(function() { 
     $(.hide).hide(); 
     $('#bio1').click(function() 
     { 
      $('#more1').toggle(slow); 
     });  
    }); 

回答

3

您可能會收到此錯誤:

Uncaught SyntaxError: Unexpected token . 

的原因是因爲$(.hide)。您需要將類名稱用引號$('.hide')包裝。

其次,你會得到這樣的錯誤:

Uncaught ReferenceError: slow is not defined 

的原因是因爲.toggle(slow)。由於slow不是一個變量,因此又需要在引號內把它包'.toggle('slow')'

最終代碼看起來應該像

$(document).ready(function() { 
    $('.hide').hide(); 
// --^ ^add this 
    $('#bio1').click(function() 
    { 
     $('#more1').toggle('slow'); 
     // ----   ^^add this 
    });  
}); 

Fiddle Demo

+0

另外「慢」是應該被包裹在引號的字符串,除非你已定義的變量例如'var slow = 100;'別的地方。然後確保你的div#bio1實際上有一個可點擊的高度或附加事件到'$('#bio1 a')' –

1

Qoutation在這裏丟失:

$(.hide).hide(); 

這將是:

$('.hide').hide(); 

,然後參數進行變過:

$('slow') // or time in milliseconds.. 
1

把一些報價areound的slow否則會產生錯誤$('#more1').toggle("slow");

0

有你的代碼一對夫婦的問題。

  1. $(.hide).hide();是錯誤的。它必須是$('.hide').hide();
  2. $('#more1').toggle(slow); - 慢沒有定義。

試試這個。

$('#bio1').click(function(){ 
    $('#more1').toggle(); 
}); 

Fiddle