2015-08-15 5 views
-1

У меня есть элемент списка. Теперь я хочу щелкнуть элемент списка. Используя Jquery, я могу это сделать. http://jsfiddle.net/aec8v3c8/4/Как выбрать элемент списка без использования jQuery?

<li class="corner-all" data-value="1aj"></li> 
<li class="corner-all" data-value="2aj"></li> 
<li class="corner-all" data-value="3aj"></li> 

$('li[data-value="1aj"]').click(function(){ 
    alert('This item is clciked'); 
}); 

Как мы можем сделать это без использования Jquery ??

+0

посмотрите [document.querySelectorAll] (HTTPS: //developer.mozilla.org/en-US/docs/Web/API/Document/querySelectorAll) и [addEventListener] (https://developer.mozilla.org/zh-TW/docs/Web/API/EventTarget/addEventListener). – fuyushimoya

ответ

3

Помните, что нет ничего JQuery можно сделать это не может быть сделано в равнинных JS (и будет работать быстрее):

var lis = document.querySelectorAll('li[data-value="1aj"]'); 
 

 
for(var i = 0; i < lis.length; i++) { 
 
    lis[i].addEventListener('click', function(){ 
 
    alert('Item clicked'); 
 
    }) 
 
}
<li class="corner-all" data-value="1aj"></li> 
 
<li class="corner-all" data-value="2aj"></li> 
 
<li class="corner-all" data-value="3aj"></li>

+0

От w3schools.com .. Примечание. Метод addEventListener() не поддерживается в Internet Explorer 8 и более ранних версиях и в Opera 7.0 и более ранних версиях. Однако для этих конкретных версий браузера вы можете использовать метод attachEvent() для присоединения обработчиков событий. – vinayakj

+0

Есть ли другой способ передать эту программу во всех браузерах. ?? Моя работа - проверить правильность работы этой программы на IE8, opera7 и другом браузере в окне 7. – ajayv

+0

2015 год, если вы хотите поддержку браузеров с 2009 года, вам нужно проверить резервный/полиполк для них. Например: вы можете проверить, существует ли такая функция: 'if (window.addEventListener) {// обычный браузер} else if (window.attachEvent) {// античный IE} else if ... etc' – Shomz

Смежные вопросы