2016-03-02 56 views
3

我创造了这个DEMO你可以看到注释文本区域当您单击文本区域,则.CinP背景颜色将发生变化。我还想点击.CinP.Cj4Jbc textarea将被重点关注。如何集中textarea的点击主类

我该怎么做?任何人都可以在这方面帮助我?

HTML:

<div class="container"> 
    <div class="CinP"> 
     <img src="http://www.technobuffalo.com/wp-content/ 
       uploads/2015/01/neytiri-avatar-5824.jpg" 
      class="FhCbmb" width="36px" height="36px" /> 
     <div class="SO1PZd"> 
     <div class="ejZfNc"> 
      <textarea class="Cj4Jbc" id="InXt10" placeholder="Comment"></textarea> 
     </div> 
     <div class="O0WRkf">SEND</div> 
     </div> 
    </div> 
</div> 

JS:

$(".CinP").focusin(function() { 
    $(this).css("background-color", "#fefefe"); 
}); 

$(".CinP").focusout(function() { 
    $(this).css("background-color", "#000000"); 
}); 

回答

2

如果我理解正确的要求那么这应该做的伎俩。 Working codepen

$(".CinP").click(function() { 
    $(this).find('textarea.Cj4Jbc').focus(); 
}); 
+0

谢谢你的答案是我想要的。它可以工作多个。 – Azzo

0

Updated Codepen

你可以使用focus()焦点的元素:

$(".CinP").click(function() { 
    $(".Cj4Jbc").focus(); 
}); 

希望这会有所帮助。

+0

容器是一个例子。我的意思是它需要工作点击只是'.CinP' – Azzo

0

您似乎希望触发事件是focusin。也许你的页面导航要求这个,而不是简单的点击。为了使div.CinP本身可以专注,您应该添加一个tabindex属性。

如何

$(".CinP").focusin(function() { 
    $(this).css("background-color", "#fefefe"); 
    $('.Cj4Jbc').focus(); 
}); 
-1

纯CSS溶液:

.CinP:hover { 
    background: #fefefe; 
} 

.CinP:hover .Cj4Jbc { 
    border: 1px solid blue; 
    box-shadow: inset 0 0 3px rgba(0, 0, 255, .5); 
}