Я написал этот простой плагин, потому что я думал, что у меня есть однозначный выбор класса, который дает мне ошибки. Выбор деда казался более прямым, чем $().parents()
для этого конкретного случая.
Ну, я использовал это однажды, потом понял, что у меня действительно была орфографическая ошибка. Не уверен, насколько это полезно. $('myelem').gparent(2);
дает тебе прародителя 'myelem'.
(function( $ ){
$.fn.gparent = function( recursion ){
if( recursion == undefined ) recursion = 2;
if(typeof(recursion) == "number"){
recursion = parseInt( recursion );
if( recursion > 0 ){
gparent_holder = $(this);
for(var gparent_i = 0; gparent_i < recursion; gparent_i++){
gparent_holder = gparent_holder.parent();
}
return gparent_holder;
}
else return false;
}
else return false;
}
})( jQuery );