我正试图在点击每个区块时获得课程内容在搜索每个产品时以及在ajax调用后都会动态更改我点击时得到的同一个类应该会添加焦点。
code :
$('#somecontainer').on('click',function(e) {
var $target = $(e.target);
if ($target.hasClass("dynamic class")) {
// same class has to focus().
}
});
应用程序视图示例:
[在此输入图像描述][1]
代码屏幕截图:![在此输入图像描述][2]
感谢你的帮助。
这样的东西怎么样?
HTML
<div id="somecontainer">
<div class="dynamic1">1</div>
<div class="dynamic2">2</div>
<div class="dynamic3">3</div>
<div class="dynamic4">4</div>
<div class="dynamic5">5</div>
<div class="dynamic6">6</div>
</div>
Javascript
$('#somecontainer').on('click', function (e) {
var $target = $(e.target);
var clazz = $target.attr('class');
$('.' + clazz).first().attr('tabindex', '-1').focus();
});
Fiddle在这里可用。
HTML:
<div id="somecontainer">
<div class="dynamic1">1</div>
<span class="dynamic2">2</span>
<p class="dynamic3">3</p>
<div class="dynamic4">4</div>
<span class="dynamic5">5</span>
<p class="dynamic6">6</p>
</div>
Jquery:
$(document).ready(function(){
$("#somecontainer > *").click(function(){
alert($(this).attr('class'));
});
});
CSS
#somecontainer > *{
width: 100px; height:100px; background:#ccc;
margin:3px; clear:both;
}
您的问题不符合您的目的。但是,您可以简单地处理产品块的点击事件,而不是处理容器的点击事件(每个产品块都必须设置为产品的静态基类):
<div class='product dynamic1'></div>
<div class='product dynamic2'></div>
$('#somecontainer .product').on('click',function(e) {
//implementation
});
或者每个产品都是没有内部子元素的div元素,您可以如下处理:
$('#somecontainer div').on('click',function(e) {
//implementation
});
在以下位置试用样品:http://jsfiddle.net/kyawlay/8z75c7f4/