我有一个div元素并设置了默认颜色。当它处于活动状态时颜色会发生变化因此,使用鼠标单击时,颜色将变为红色。当DOM准备就绪时,我也会触发点击事件。但是,当我触发click事件时,行为就不一样了。元素不会改变颜色,它会消失。实现它的最佳方法是什么?
这是jsfiddle:https://jsfiddle.net/uvcwxLjr/。
var ele = document.querySelector('.clickMe');
ele.addEventListener('click', function() {
alert('You\'ve clicked me');
});
ele.click();
我知道可以通过创建另一个具有背景红色的类来完成,并在鼠标按下时添加,在鼠标按下时删除。还有更好的方法吗?
答案 0 :(得分:0)
#!/usr/bin/env python
from contextlib import closing
from selenium.webdriver import Firefox
import time
# use firefox to get page with javascript generated content
with closing(Firefox()) as browser:
# setting the url
browser.get("http://bonusbagging.co.uk/oddsmatching.php#")
# finding and clicking the button
button = browser.find_element_by_id('select_button')
button.click()
page = browser.page_source
time.sleep(5)
print(page.encode("utf8"))

$(function () {
$(".clickMe").click(function () {
$(this).css('background-color', 'green');
alert('change green');
});
});

.clickMe {
width: 100px;
height: 100px;
background-color: red;
}

答案 1 :(得分:0)
'警报'函数将阻止浏览器中的ui线程(more info),换句话说,alert
阻止div以红色呈现。或者,您可以使用console.log
,如下所示:
var ele = document.querySelector('.clickMe');
ele.addEventListener('click', function() {
console.log('You\'ve clicked me');
});
ele.click();