Я хотел создать плагин JQuery, который поможет мне подсчитать общее количество раз, когда выбранный элемент присутствует в документе HTML: поэтому я написал следующее Jquery Plugin:, подсчитывая общее количество выбранных элементов в документе HTML, до console.logging
(function($){
$.fn.test = function(options){
var new_src,
src_storage = [];
return this.each(function(){
get_prop($(this));
log_it();
});
function log_it(){
console.log(src_storage.length);
}
function get_prop(current){
var temp = current.attr('src');
src_storage.push(temp);
}
}
}(jQuery));
теперь предположим, я называю плагин следующим образом:
$(document).ready(function(){
$('img').test();
});
теперь результаты я получаю в консоли выглядит следующим образом: (у меня есть 9 изображений в моем HTML-документ)
1
2
3
4
5
6
7
8
9
теперь результат я ожидал был:
9
, но я предполагаю, что порядок выполнения такого в моем плагине, что непосредственно после get_prop ($ (это)); функция называется функцией log_it(), вызываемой.
так как я могу подсчитать общее количество элементов в документе, прежде чем регистрировать их?
EDIT: Следующий подход работает, не знаю, насколько хорошо или очистить это, хотя:
this.each(function(){
get_prop($(this));
});
return this.each(function(){
log_it();
});
Спасибо, что вы помощь будет действительно цениться.
Tenali.
Почему вы не используете $ ('IMG'). Длина свойство Jquery? Он также вернет 9 в вашем случае. – SeeTheC
@SeeTheC Я кодирую плагин, а не только пишу одноразовый снайпер. но я тоже попробую этот подход. Спасибо –