我有以下html代码,在单击特定按钮时,我想更改特定html元素的颜色。

<paper-button style="background:blue" class="blue"></paper-button>
<paper-button style="background:red" class="red"></paper-button>


这是我的剧本

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <script>
    $(document).ready(function(){
        $(".blue, .red").click(function(){
            $(".abc").css("background-color", $(".blue, .red").css("background-color"));
        });
    });
    </script>


在单击两个按钮时,该元素的颜色都会更改,但会变为蓝色,而不会变为红色。
当我将代码更改为

<paper-button style="background:red" class="red"></paper-button>
<paper-button style="background:blue" class="blue"></paper-button>


在这种情况下,无论按下的按钮如何,颜色都会变为红色。
如何确保颜色变为按下的按钮。

最佳答案

当您执行$(".blue, .red").css("background-color")时,您正在使用dom中第一个元素的背景色。使用$(this)仅获取所单击元素的背景色:

   $(".blue, .red").click(function(){
       $(".abc").css("background-color", $(this).css("background-color"));
   });

关于javascript - jQuery点击多个,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32666117/

10-11 03:04