为动态插入的HTML运行javascript函数
Run javascript function for dynamically inserted HTML
我有一段代码,在另一个元素的悬停位置插入下面的代码。
<div class="star" id="1">
<div class="star" id="2">
<div class="star" id="3">
<div class="star" id="4">
<div class="star" id="5">
</div>
</div>
</div>
</div>
</div>
所有我想做的是检索每个DIV的ID通过javascript:
$(document).ready(function() {
$('.star').on(function(e){
e.stopPropagation();
var rating = $(this).attr('id');
alert(rating);
});
});
我已经尝试了很多方法来实现这个,这是我最近尝试的,但我仍然没有运气!如有任何帮助,我将不胜感激
添加div时触发事件
var counter = 0;
$(someelement).on("mouseenter",function(){
counter++;
$('<div class="star" id="' + counter + '" />').appendTo(".star:last").trigger("staradded");
})
$(document).on("staradded",".star",function(e) {
alert(this.id);
});
或者更好的是,跳过这个事件。
var counter = 0;
$(someelement).on("mouseenter",function(){
counter++;
$('<div class="star" id="' + counter + '" />').appendTo(".star:last");
alert(counter);
})
我会使用"livequery"插件- https://github.com/brandonaaron/livequery
如果我理解正确的话,你需要一些像"live"这样的旧函数,因为你想看所有新的。明星"元素。
在本例中,您只需使用以下代码:
$('.star').livequery('click',function(e){});
你可以在那里找到一个简单的例子- http://jsfiddle.net/WEr5J/11/
您的wrong
语法为on,因为您不是telling
,您想绑定什么事件。在绑定所需的事件后,例如单击,您可以使用映射函数获得star
类的elements
的所有逗号分隔的id。
Live Demo
$(document).on('click', '.star', function(e) {
e.stopPropagation();
ids = $('.star').map(function() {
return this.id;
}).get().join();
alert(ids);
});
您需要使用each来遍历所有元素。
$('.star').each(function(){
var rating = $(this).attr('id');
alert(rating);
});
相关文章:
- 在终端中运行 JavaScript 时(使用 rhino),如何使用 print() 函数在一行中打印
- 向下滚动时运行javascript
- 在Android WebView中运行Javascript-onPageFinished循环
- 在父网页的iframe中运行JavaScript
- 有条件地运行javascript函数-Razor,HTML
- 如何通过获取用户输入和使用按钮来运行JavaScript函数
- 使用c#在Web服务器上运行JavaScript方法
- 单击链接时停止运行javascript
- 在浏览器检查表单之前运行javascript onsubmit
- 如何在表单提交事件后运行JavaScript*
- Mediawiki小部件将不会运行javascript
- 有没有一种方法可以在服务器端页面加载之前在加载时运行javascript
- 在GitHub上运行JavaScript Koans
- Chrome扩展:是否有一种方法可以运行JavaScript来获取页面上的内部html,并将其保存到扩展中的变量中
- 在不加载页面的情况下运行javascript
- [AutoIt]如何使用FF.au3在FireFox上的页面中运行javascript
- 仅在屏幕媒体上运行javascript/jquery,而不是打印
- Scala提升了如何运行javascript函数并将返回值存储在变量中
- 安卓系统:通过loadUrl运行javascript时,网络视图中的视频会冻结
- 在页面加载完成之前,使用URL参数运行JavaScript