如何查找加载子元素的父元素,而无需从另一个函数明确声明它?如何查找加载子元素而不显式声明它的父元素?
jQuery的,
$(document).ready(function(){
$('.load-child').load_child();
});
(function($) {
$.fn.extend({
load_child: function(options) {
var o = $.extend({
target:'.parent'
}, options);
var $this = this;
var $cm = this.click(function(e) {
var object = $(this);
var path = object.attr('href');
$(o.target).load(path, function(){
$this.child();
});
return false;
});
$this.child = function() {
$('.find-parent').click(function(event){
var object = $(this);
object.parents('.parent').css({background:'red'});
return false;
})
};
return $cm;
}
})
})(jQuery);
指数HTML,
<a href="child.php" class="load-child">load child</a>
<div class="container">
<div class="parent">
</div>
</div>
子页面,
<div>
<div></div>
<div></div>
<div><a href="#" class="find-parent">click me</a></div>
</div>
我可以得到.parent
元以上,因为我明确地声明父名,
object.parents('.parent').css({background:'red'});
但是如果父母的名字是未知的或者经常改变呢?是否有任何通用的方法来定位/追溯到用于加载页面的元素?
加载的页面可能有div元素的负荷,所以我不能做到这一点,
object.parent().css({background:'red'});
或
object.parents(div).css({background:'red'}); // this will go up to the very top of div element.
编辑:
你错过了一对';' – elclanrs 2012-03-16 02:11:56
谢谢。刚刚找到他们!大声笑 – laukok 2012-03-16 02:14:23