2013-04-01 21 views
-1

Я работаю над моим проектом Wordpress, и я создал некоторый код jQuery, но он работает только на первый элемент.Нажмите событие только для первого элемента?

Вот мой CSS:

<style type="text/css"> 
    #hide { 
     display:none; 
    } 
</style> 

Вот мой JQuery:

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("#show").click(function(){ 
      $("#hide").toggle(); 
      return false; 
     }); 
    }); 
</script> 

Что я делаю неправильно?

+0

1) Как выглядит ваш HTML-код? 2) Вы используете идентификатор в качестве селектора, который будет возвращать только один элемент, потому что идентификатор * предполагается * уникальным. –

ответ

7

Вы, вероятно, есть несколько идентификаторов с таким же именем (#show и #hide) - изменить все эти элементы, чтобы использовать класс вместо (ID's are supposed to be unique), а затем вы можете изменить свой код что-то вроде следующего:

$(document).ready(function(){ 
    $(".show").click(function(){ 
     $(this).toggleClass('hide'); 
     return false; 
    }); 
}); 

и слегка изменить CSS, а также:

.hide { 
    display:none; 
} 
+0

, и если есть несколько элементов, вы, вероятно, захотите использовать '$ (this)' для поиска ближайшего или следующего элемента '.hide' –

+0

@RodrigoAssis #hide - стиль css, судя по его разметке, но да, right about $ (this) :) – lifetimes

+0

ОК, спасибо! еще один вопрос, кто знает, почему, когда я использую shortcode в этом коде, он не работает ... :(READ MORE [post-content id = 888] maxfed

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