2014-02-15 4 views
0

UPDATEИзменение цвета фона (Jquery CSS3?)

Update:

В соответствии с инструкциями Zach Сокир, добавлены следующие коды:

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, чтобы сделать это. Для этого потребуется событие click, например '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

Не то, чтобы это было важно, но вы можете принять ответ. Если вы получите ответ, который, по вашему мнению, решит вашу проблему, примите его (есть флажок aprox в том же месте, что и кнопки upvote-downvote) – vals

+0

Я бы рекомендовал передать себя в качестве параметра, чтобы функция могла быть повторно использована (: http://jsfiddle.net/rU7yd/1/ –

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