Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
$("#id .class tag:visible")$("#id .class tag").filter(":visible")var li_items = "";
for (var i=0; i< top_100_list.length; i++)
li_items += '' + top_100_list[i] + '';
$mylist.append(li_items);
var li_items = [];
for (var i=0; i< top_100_list.length; i++)
li_items.push('' + top_100_list[i] + '');
$mylist.append(li_items.join(''));
var myElement = $('#myElement');
myElement.bind('click', function(){...});
myElement.css('border', '3px dashed yellow');
myElement.css('background-color', 'orange');
myElement.fadeIn('slow');Можно проще:$('#myElement').bind('click', function(){...}).css('border', '3px dashed yellow').css('background-color', 'orange').fadeIn('slow');
var myElement = $('#myElement')
.bind('click', function(){...})
.css('border', '3px dashed yellow')
.css('background-color', 'orange')
.fadeIn('slow');
$('.some_class')... // поиск будет медленный
...
...
$('.some_class')... // jQuery возьмет из кеша, поиска не будет
$('#myElement')
.bind('click', function(){...})
.css({
'border' : '3px dashed yellow',
'background-color' : 'orange'
}).fadeIn('slow');
$('#myElement')
.bind('click', function(){...})
.addClass('activeState')
.fadeIn('slow');
var myElement = $('#myElement');
. . .
myElement.bind('click', function(){...});
. . .
myElement.css('border', '3px dashed yellow');
. . .
myElement.fadeIn('slow');
for(var i = 0; i<5000; i++)
$("li.stop").attr("class");
var el = $("li.stop");
for(var i = 0; i<5000; i++)
el.attr("class");
01 if(document.getElementsByClassName) { // если есть родная фукнция, используем ее *
02 getElementsByClass = function(classList, node) {
03 return (node || document).getElementsByClassName(classList) // вызываем метод getElementsByClassName нужного узла.
04 // если указан node, то будет произведен поиск в нем, иначе во всем документе
05 }
06
07 } else { // если родной функции нет, то будем обходить DOM
08 getElementsByClass = function(classList, node) {
09 var node = node || document, // узел, в котором ищем
10 list = node.getElementsByTagName('*'), // выбираем все дочерние узлы
11 length = list.length, // количество дочерних узлов
12 classArray = classList.split(/\s+/), // разбиваем список классов
13 classes = classArray.length, // длина списка классов
14 result = [], i,j
15 for(i = 0; i < length; i++) { // перебираем все дочерние узлы
16 for(j = 0; j < classes; j++) { //перебираем все классы
17 if(list[i].className.search('\\b' + classArray[j] + '\\b') != -1) { // если текущий узел имеет текущий класс
18 result.push(list[i]) // запоминаем его
19 break // прекращаем перебор классов
20 }
21 }
22 }
23
24 return result // возвращаем набор элементов
25 }
26 }
* This source code was highlighted with Source Code Highlighter.var $inputs = $('#myForm input');jMyElement, jInputs, jMyList и так далее.var top_100_list = [...]; // содержимое новых элементов
var new_ul = "";
- ' + top_100_list[i] + '
$mylist.replaceWith(li_items);
var top_100_list = [...]; // содержимое новых элементов var new_ul = "<ul id='mylist'>"; // вставляемый html-текст $mylist = $('#mylist'); // необходимый список for (var i=0; i< top_100_list.length; i++) li_items += '<li>' + top_100_list[i] + '</li>'; new_ul += "</ul>"; $mylist.replaceWith(li_items);
<div>
<a href="#" onclick=«this.parentNode.className='swapOn'» class=«swapBlock1»>[показать контент]</a>
<a href="#" onclick=«this.parentNode.className=''» class=«swapBlock2»>[спрятать контент]</a>
<div class=«swapBlock2»>Контент блока 1</div>
</div>
.swapBlock2, .swapOn .swapBlock1 {display: none }
.swapOn .swapBlock2 { display: block }
<ul class=«menu»>
<li class=«menuItem»><span class=«menuTitle»>Menu item1</span></li>
<li class=«menuItem»><span class=«menuTitle»>Menu item2</span></li>
</ul>
$('#showHide').click(
function(){
$('#content').toggle()
}
)
$('#showHide').click(
function(){
$(this).parent.toggleClass('swapOn')
}
)$('#showHide, #otherShowHide, #thirdShowHide').click(
function(){
$(this).parent().toggleClass('swapOn')
}
)
// put here selector to enable folding
var items = ['#id1', '#id2', '#id3', '#id4']
$(items.join(', ')).click(
function(){
$(this).parent().toggleClass('swapOn')
}
)$('#selector').click(function(){
$(this).find('.class')....;
});$('#selector').click(function(){
$('.class', this)....;
});
// Take a shortcut and set the context if the root selector is an ID
// (but not if it'll be faster if the inner selector is an ID)
if ( !seed && parts.length > 1 && context.nodeType === 9 && !contextXML &&
Expr.match.ID.test(parts[0]) && !Expr.match.ID.test(parts[parts.length - 1]) ) {
var ret = Sizzle.find( parts.shift(), context, contextXML );
context = ret.expr ? Sizzle.filter( ret.expr, ret.set )[0] : ret.set[0];
}
$('#myList').click(function(event){
$(event.target).addClass('clicked'); // добавим нажатому элементу класс clicked
});
<ul id="#myList">
<li>
<a> Menu 1 </a>
</li>
<li>
<a> Menu 2 </a>
</li>
<li>
Menu 3
<ul>
<li>
<a> Submenu 3-1 </a>
</li>
</ul>
</li>
</ul>
Правила эффективного использования jQuery