Действие на несколько элементов

0

У меня есть 2 элемента на моей странице, которые я нажимаю на кнопку1, которую он должен скрывать, тогда как я нажимаю элемент блока

цвет фона должен быть изменен на зеленый.

<html>
    <head>

        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
        </script>
        <script>
            $(document).ready(function(){
                $("#button1").click(function(){
                $(this).hide();
                });
            });
        </script>
    </head>
    <body>
        <button id="button1">Button1</button>
        <p>This is a block element</p>
    </body>
</html>
Теги:

2 ответа

1
$(document).ready(function () {
    $("#button1").click(function () {
        $(this).hide();
    });
    $("p").click(function () {
        $(this).css('background-color', 'green');
    });
});
0

Это легко: вам нужно связать обработчик события Click с обоими элементами.

<script>
  $(document).ready(function(){
      $("#button1").click(function(){
           $(this).hide();
      });

      $("p").click(function () {
        $(this).css('background-color', 'green');
     });
  });
</script>

Рабочая демонстрация

ИЛИ Вы также можете сделать это следующим образом -

$(document).ready(function(){
     $("#button1, p").click(function(e){
        if(e.target.nodeName === "BUTTON"){
           $(this).hide();
        }
        else if(e.target.nodeName === "P"){
          $(this).css('background-color', 'green');
        }
     });    
});

Рабочий пример

Ещё вопросы

Сообщество Overcoder
Наверх
Меню