单击以获取附加的html
Click for appended html
我有这样的html:
<a class="link">text</a>
<div class="items"></div>
(function($) {
var link = $('.link');
link.click(function(){
alert('it works!');
});
$('.items').each(function() {
var items = $(this),
item = $('<div>something inside</div>');
items.append(item);
item.click(link.click());
});
})(jQuery);
我正在尝试为附加的item
绑定一个click
事件。因此,当我们点击item
时,应该会启动link
。
但是我从jQuery内部的某个地方得到了一个错误Uncaught TypeError: Object [object Object] has no method 'apply'
。
怎么了?
您需要一个event delegation
到动态添加的元素:
items.on('click', item, function(){
link.click();
});
试拉小提琴:http://jsfiddle.net/qQLLL/
也许你应该试试smth。像这样:
function myClick(){
alert('it works!');
}
$(".link").click(myClick);
$('.items').each(function() {
var items = $(this),
item = $('<div>something inside</div>');
items.append(item);
item.click(myClick);
});
尝试事件委派
items.on('click', item, function(){
link.click();
});
如果您想阅读更多关于事件委派
尝试这个
(function($) {
var handleClick = function() {
alert('it works!');
};
$('.link').click(handleClick);
$('<div>something inside</div>').appendTo('.items').click(handleClick);
})(jQuery);
您的错误是:
item.click(link.click);
应该是
item.click(function(){ link.click() });
相关文章:
- 无法将数据从firebase获取到我的html页面
- Brightcove获取/显示HTML中的当前视频标题和描述
- 获取HTML属性中CSS声明的值
- 这是使用html快照和谷歌获取的预期结果吗?SEO/SPA
- Html获取Rgb中的颜色
- 使用 jQuery 从 HTML 获取 id,给出意想不到的结果
- html获取调用onsubmit的位置
- 使用 HTML 获取已提交表单之外的选中元素
- 如何从 HTML 获取输入以链接到 MyChecker 函数?它不起作用
- 我如何从javascript到PHP或HTML获取变量
- 在ajax响应中从html获取输入值
- HTML获取URL参数
- ng-bind-html获取html内容的第一个字母
- 从HTML获取标题
- 从Html获取信息
- 使用Javascript和HTML获取选定的选项,并根据值显示字符串
- 通过AJAX和PHP通过输入HTML获取和读取文件
- 如何使用javascript生成的html获取标签的ID
- 在页面刷新(php)上从html获取表单数据
- JS Regexp:从 html 获取内联 JavaScript