2016-01-09 2 views
0

У меня этот код. Его для каждого элемента. Есть ли способ его автоматизировать? Потому что, если я хочу добавить элемент (например, job4), мне также нужно добавить код jQuery.jQuery - авто добавить toggle на элемент?

$("#jobi1").click(function() { 
    $("#job1").fadeIn(300); 
}); 
$("#jobi2").click(function() { 
    $("#job2").fadeIn(300); 
}); 
$("#jobi3").click(function() { 
    $("#job3").fadeIn(300); 
}); 
+1

добавить общий класс к этим элементам и связать одно и то же событие для этого класса за один раз. Это сделает работу. –

+0

Используйте классы и обход DOM, покажите нам, как выглядит HTML, как размещаются элементы и т. Д. – adeneo

+0

Если это для «каждого отдельного элемента», вы можете сделать '$ (" * ")' – j08691

ответ

0

Дайте элементы JOB тот же класс и поместить идентификатор задания в данном атрибуте , например:

<button class="job" data-id="job1">job1<button> 
<button class="job" data-id="job2">job2<button> 
<button class="job" data-id="job3">job3<button> 

И javascript:

$('.job').on('click', function(){ 
    var id = $(this).data('id'); 
    $('#'+id).fadeIn(300); 
}); 
+0

Я был на самом деле На 10 секунд быстрее, но все в порядке. Вам нужна репутация больше, чем я;) – mplungjan

+0

Спасибо, друг. :) –

0

Используйте класс и захватить идентификатор из атрибута данных

$(".job").on("click",function() { 
    $(this).data("target").fadeIn(300); 
}); 

использование

<div class="job" data-target="job1">...</div> 
Смежные вопросы