2014-02-15 122 views
0

UPDATE更改背景颜色(jQuery的CSS3?)

更新:

作为继扎克索西耶说明,添加以下代码:

JS

this.onclick = function() { this.style.background = "red"; this.innerHTML = "Bought"; } 

所以按钮是:

<a onclick="javascript:func(this)" class="ajax_add_to_cart_button comprar_mat" rel="ajax_id_product_14" href="../cart.php?add&amp;id_product=14" id="matricularme">Matricularme</a> 

但仍然无法正常工作


我想加上我的网站的几个按键有一定的影响,我不能够做到这一点。

的HTML链接(如图按钮)看起来是这样的:

<td class="marker"> 
    <a class="ajax_add_to_cart_button comprar_mat" rel="ajax_id_product_14" href="../cart.php?add&amp;id_product=14">Buy it now!</a> 
</td> 

正如你可以看到这个按钮将在我的网站上的产品,我只是想改变整个文本为“购买”文本并替换背景也。

我应该使用什么?任何类型的JQuery?或者,也许只是添加一个CSS样式,其中一个精灵图像是“立即购买!”和“买”,所以只需更改背景位置?

感谢

+1

最有可能会是最好的使用JavaScript来做到这一点。它需要点击事件,像'this.onclick = function(){this.style.background =“red”; this.innerHTML =“买”; }' –

+0

如示例中所示添加事件不起作用(也在文件中添加js)// Buy it now!

+0

要么是这个,要么是使用'onclick'事件作为主播 –

回答

2

对于这个HTML

<td class="marker"> 
    <a onclick="buy()" id="myid">Buy it now!</a> 
</td> 

设置这个JS

function buy() { 
    var ele=document.getElementById("myid"); 
    ele.style.background = "red"; 
    ele.innerHTML = "Bought"; 
} 

fiddle

另一个版本,纳入reusabilitysugested扎克和变量字符串处理:

<td class="marker"> 
    <a onclick="buy(this)" id="myid">Buy it now!</a> 
</td> 
<br> 
<td class="marker"> 
    <a onclick="buy(this)" id="myid">Buy it as gift!</a> 
</td> 


function buy(ele) { 
    ele.style.background = "red"; 
    ele.innerHTML = ele.innerHTML.replace("Buy it", "Bought"); 
} 

demo

+0

它的工作原理完美。非常感谢(我不能赞成没有足够的声誉,所以任何人都可以将它作为最佳答案投票吗?) –

+1

不是很重要,但你可以接受答案。如果你得到一个你认为解决了你的问题的答案,接受它(在upvote-downvote按钮的同一位置有一个复选标记aprox) – vals

+0

我建议将它自己作为参数传递,以便函数可以重用( :http://jsfiddle.net/rU7yd/1/ –