好的,所以這聽起來很簡單,使用jquery的'點擊'功能。如何點擊鏈接並獲取其顏色?
事情是我想要鏈接的原始顏色而不是它的徘徊顏色 - 例如,如果鏈接爲綠色且懸停狀態爲橙色,則我將獲取綠色。
我試過是最好的,我可以和它在一個fiddle
任何人都表示有什麼想法?
編輯:道歉,但作爲一些老鷹的眼睛已經發現(感謝他們指出)綠色實際上是「rgb(0,128,0)」,不是rgb(0,255,0 )如我原來的小提琴中所示。
好的,所以這聽起來很簡單,使用jquery的'點擊'功能。如何點擊鏈接並獲取其顏色?
事情是我想要鏈接的原始顏色而不是它的徘徊顏色 - 例如,如果鏈接爲綠色且懸停狀態爲橙色,則我將獲取綠色。
我試過是最好的,我可以和它在一個fiddle
任何人都表示有什麼想法?
編輯:道歉,但作爲一些老鷹的眼睛已經發現(感謝他們指出)綠色實際上是「rgb(0,128,0)」,不是rgb(0,255,0 )如我原來的小提琴中所示。
儲存於jQuery's data
對象:
$('a').each(function() {
$(this).data('color', $(this).css('color'));
})
.click(function() {
alert($(this).data('color'));
});
這是你的提琴:http://jsfiddle.net/sVDYe/4/
爲了更好的表現,我會使用the static methods在循環。 They're much faster:
$('a').each(function() {
$.data(this, 'color', $.css(this, 'color'));
});
Ooooooh,這真的很聰明!我在那裏搜索了幾天,每次都打敗我 - 謝謝! – Steve
檢查這將肯定
<script>
$("a").click(function() {
$(this).toggleClass("colorclass");
});
</script>
不是我正在尋找的東西 - 我正在嘗試獲取顏色,而不是設置它或切換它,但無論如何都要感謝。 – Steve
工作,可以嘗試下面的方法..
DEMO:http://jsfiddle.net/sVDYe/33/
$("a").click(function(e) {
e.preventDefault();
var tmpLink =$(this).clone();
tmpLink.appendTo($(this).parent());
var acolor = tmpLink.css("color");
tmpLink.remove();
if (acolor == 'rgb(255, 165, 0)') {
alert('wrong color - its ORANGE =' + acolor);
} else if (acolor == 'rgb(0, 128, 0)') {
alert('CORRECT color - its GREEN =' + acolor);
}
});
由於pimvdb指出。綠色是RGB(0,128,0)
'appendTo('body')'?級聯並不真的那樣...... –
@JosephSilber你是什麼意思? –
恐怕這不起作用,因爲CSS規則可能非常具體。例如,如果規則爲'.container> a {color:...}'因爲它與克隆不匹配。 – pimvdb
可以使用,而不是CSS jQuery的處理顏色的變化,並將其存儲:
var hoverColor;
$("a").hover(function() {
hoverColor = $(this).css("color");
$(this).css("color", 'orange');
}, function() {
$(this).css("color", 'green');
});
$("a").click(function (e) {
e.preventDefault();
var acolor = hoverColor;
if (acolor == 'rgb(255, 165, 0)') {
alert('wrong color - its ORANGE =' + acolor);
} else if (acolor == 'rgb(0, 128, 0)') {
alert('CORRECT color - its GREEN =' + acolor);
}
});
另外綠色是
RGB(0,128,0)
謝謝 - 我錯過了那個 - 你說得對。 – Steve
''my link綠色 – karim79
是'(0,128,0)'對我來說,通過的方式。 – pimvdb