捕获指定元素的负载
catch load of a specified element
我想捕获/处理指定项目的负载(如果它是动态加载的(。
如果事件click
则工作正常:
$('#articles').on("click",".article",function(eo){
//...
});
这是我尝试过的:
$(document).on("load","input",function(){
alert(1);
});
这就是我将如何使用它:
<input type=hidden name='size' value=1>
<select name='size'>
<option value=0>A4</option>
<option value=1>A3</option><!--this will be selected, that is indicated with the hidden input-->
</select>
执行此操作的脚本:
$(document).on("load","input",function(e){
var name = e.attr("name");
var val = e.val();
if(name!=""&& typeof(e)!="undefined")
{
e.parent().find('select[name='+name+']').val(val);
}
});
如果可能的话,我问某种 on(( 函数,因为手册说它是首选。
我建议如下:
$(document).on('DOMNodeInserted', 'input', function(e) {
console.log($(this));
});
JS小提琴演示。
如果您担心那些使用未实现DomNodeInserted
的浏览器的体验,那么您当然可以在元素附加到 DOM 的点触发具有自定义事件名称的事件,然后使用 on()
方法侦听该事件:
$(document).on('customEventName', 'input', function(e) {
console.log($(this));
});
$('#add').click(
function() {
var i = $('input').length,
input = $('<input />',{'id' : 'input_' + i});
input.appendTo('body').trigger('customEventName');
});
JS小提琴演示。
<小时 />引用:
- DOM 级别 3 事件,包括
DOMNodeInserted
. -
on()
. -
trigger()
.
你可能想看看 jquery 的 livequery 插件:
http://docs.jquery.com/Plugins/livequery
$('input')
.livequery(function(){
alert(1);
}
如果它是动态加载的元素,请尝试.live()
,其工作原理类似于.bind()
仅保持动态添加元素的搜索打开并在它们出现时绑定它们。
如果要查找特定元素,则可以使用 setTimeout
定期查找与新选择器匹配的元素。
function findNew() {
var $selected = $('.some-selector').filter(function() {
return !$(this).data('filtered');
});
$(document).trigger({type: 'elementadded', elements:$selected });
$selected.data('filtered', true);
setTimeout(findNew, 500);
}
$(document).on('elementadded', function(e) {
alert('found ' + e.elements.length + ' new elements.');
});
findNew();
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- 如何设置html元素填充的动画
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 使用clickToggle并在单击另一个元素时关闭元素
- 单击时将焦点更改为元素
- 表追加而不附加最后一个元素
- 如何在jQuery中获取元素的形式
- 我可以获得相对于被点击元素的确切点击位置吗
- 在函数中添加数组元素的数值
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 将视口底部滚动到元素底部
- 是否有任何snippet或jQuery插件可以列出easylist.txt模式匹配的DOM中的所有元素
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 如何使用jquery处理php循环通过元素
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- JQuery添加元素需要在我的js之前再次添加JQuery脚本
- 捕获指定元素的负载
- 如何将带有各种元素的JSON数组传递到http负载
- 如何在负载上获得元素宽度