Я использую jQuery. Я создаю простую галерею изображений с флажками для категорий того, что показывать, а что скрывать.
Итак, мое верхнее меню позволит пользователю выбирать, что он хочет видеть:
Итак, мое верхнее меню позволит пользователю выбирать, что он хочет видеть:
п>
Код: Выделить всё
All
Landscape
Landscape
Still Life
...
Код: Выделить всё
?check1=landscape&check3=still-life
Код: Выделить всё
// set up handler for checkboxes
$( document ).ready(function() {
$( "input[type=checkbox]" ).on( "click", countChecked );
});
var countChecked = function() {
var listt = $( "input:checked" );
params = $.param(listt); // this is not right
console.log(listt);
};
countChecked();
Это был синтаксический анализатор строки запроса, который у меня был, но он принимает только один параметр. Я бы хотел, чтобы он принимал любое число.
Код: Выделить всё
function processFilter() {
// process query string
var qs = function() {
var s = window.location.search.substr(1),
p = s.split(/\&/), l = p.length, kv, r = {};
if (l === 0) { return false; }
while (l--) {
kv = p[l].split(/\=/);
r[kv[0]] = decodeURIComponent(kv[1] || '') || true;
}
return r;
}();
var allPics = $('article')
var typeFilter = qs.filter || null;
// check the query string filter
if (typeFilter !== null) {
// it is not null, process it
$.each(allPics, function(i,v) {
if ($(v).hasClass(typeFilter)) {
$(v).css('display','inline-block');
}
});
}
else {
// it is null, treat as all
$.each(allPics, function(i,v){
$(v).css('display','inline-block');
});
}
}
Итак, если пользователь проверил пейзаж и натюрморт, то любые «статьи», имеющиеClass() пейзаж или натюрморт< /код> будет .css('display','inline-block')ed.
Вот мой шаблон изображения, который я создаю на основе объекта .json .
Код: Выделить всё
$("body").append (
"" +
"" +
"
[img]img/[/img]
" +
"" +
"
" +
"" + v.img + "
" + v.store + "" + "" +
"" + v.text + "" +
"
" +
"\n"
});
Подробнее здесь: https://stackoverflow.com/questions/792 ... ts-visible
Мобильная версия