2012-04-23 87 views
0

我似乎無法看到以下代碼的問題,也許我會失明。JQuery選擇器或鼠標懸停問題

我們改變顏色作品的JavaScript行,但下一行不是我做錯了什麼?

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script> 

<div class="Generic"> 
    <div class="box"> 

     <div class="Corner"> 
     </div> 


     <div class="headerText"> 
      <h1>text1</h1> 
      <p>text3</p> 
     </div> 


     <div class="Content"> 
      <a href="https://www.mylink.com" title="Sign Up Now">Proceed</a> 
     </div> 

    </div> 

    <p style="float:left; font-weight:bold; padding: 10px; padding-top:35px;">OR</p> 

</div> 

<script type="text/javascript"> 

    $("div.box").mouseover(function() { 
     $("div.Generic div.Content a").css("color", "yellow"); 
     $("div.Generic div.Content .box").css("border", "1px solid black"); 
    }); 

</script> 
+0

您使用了不同的選擇,是否選擇所匹配什麼嗎? 'console.log($('div.Generic div.Content .box')。)' – 2012-04-23 16:38:10

回答

3

看起來你的選擇器倒退了。嘗試這樣的事情,而不是:

$("div.Generic div.box div.Content").css("border", "1px solid black"); 

有一個更好的方式來做到這一點,雖然。試試這個:

$(function() { 
    $(".box").mouseover(function() { 
     $(this).find(".content").css("border", "1px solid black"); 
     $(this).find(".content a").css("color", "yellow");   
    }); 
});​ 
+0

乾杯哈哈我想我需要一些咖啡!謝謝你的幫助額外的一雙眼睛總是有幫助! – Anicho 2012-04-23 16:42:37

+0

沒問題!我們都有我們的日子! :) – 2012-04-23 16:49:51

4

或只使用:

$("div.box").mouseover(function() { 
     $("div.Generic div.Content a").css("color", "yellow"); 
     $(this).css("border", "1px solid black"); 
    }); 

,因爲你已經選擇了它

+0

絕對正確,問題就在於你的選擇器在第二行...... – rashid2538 2012-04-23 16:46:09

+0

是的,謝謝你,因爲我的疲倦,手的簡單錯誤會使它儘快改正! – Anicho 2012-04-23 16:50:33

1

.box的不在範圍div.Content,

所以它應該閱讀:

$("div.Generic .box").css("border", "1px solid black");

不是?