你能看看这个演示,让我知道它为什么不起作用
function changeColor(item){
var item = $(this);
item.css("color", "green");
}
$(".changer").on("click", function(){
$('p').changeColor();
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p >Name</p>
<button class="btn btn-default changer" type="submit">Changer</button>'
&#13;
答案 0 :(得分:2)
您需要将changeColor
定义为 jQuery插件而不是简单的功能。
$.fn.changeColor=function(){
this.css("color", "green");
}
然后,不再需要item
参数,因为您可以通过this
访问jQuery中的target元素;
__
$.fn.changeColor=function(){
this.css("color", "green");
}
$(".changer").on("click", function(){
$('p').changeColor();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p >Name</p>
<button class="btn btn-default changer" type="submit">Changer</button>'
答案 1 :(得分:1)
你正在调用函数changeColor,好像它是一个jQuery插件,但它只是一个简单的javascript函数。
$.fn.changeColor = function changeColor(){
var item = $(this);
item.css("color", "green");
}
$(".changer").on("click", function(){
$('p').changeColor();
});