Javascript 将live添加到jquery函数
如何将Javascript 将live添加到jquery函数,javascript,jquery,Javascript,Jquery,如何将.live添加到以下函数中 $(document).ready(function(){ $.fn.vAlign = function() { return this.each(function(i){ var ah = $(this).height(); var mh = (368 - ah) / 2; $(this).css('margin-top', mh); }); }; $('div.slideshow img').vAlig
.live
添加到以下函数中
$(document).ready(function(){
$.fn.vAlign = function() {
return this.each(function(i){
var ah = $(this).height();
var mh = (368 - ah) / 2;
$(this).css('margin-top', mh);
});
};
$('div.slideshow img').vAlign();
});
我需要添加
live
,因为jQuery正在生成div.slideshow img
。除非在执行脚本之前div已经是HTML格式,否则函数似乎无法工作。我认为.live
、.delegate
或.on
在这种情况下对您没有帮助。您可能需要运行$('div.slideshow img').vAlign() 您可以使用
这将使vAlign()在加载时和加载后的任何时候都可以在与您的选择相匹配的任何元素上执行。将新创建的元素插入DOM后,只需调用.vAlign
。一如既往,如果使用jQuery 1.7或更高版本,请使用而不是.live()
。是否可以添加对vAlign()的调用在生成img的同一jQuery代码中?或者至少,在img生成代码中触发一个定制事件,然后您可以绑定到它?
$('div.slideshow img').livequery(function(){ $(this).vAlign(); });