仅创建第二次点击事件 Javascript
Create Second Click Event Javascript Only
当我单击按钮时,我需要让图像更改不透明度,然后在再次单击按钮时更改回来。我只能使用Javascript。我已经设置了 2 个 if/else 语句,当我第一次单击按钮时事件发生,但我无法让第二个事件发生。我对javascript很陌生。
var img = document.querySelector('#img');
var button1 = document.querySelector('#button1');
var bool = new Boolean();
if (chrome.style.opacity = "1.0"){
bool = true;
}
else if (chrome.style.opacity = "0.5"){
bool = false;
}
if (bool){
button1.addEventListener('click', function() {
chrome.style.opacity = "0.5";
});
}
else{
button1.addEventListener('click', function() {
chrome.style.opacity = "1.0";
});
}
试试这个
.html
<button id="button1">hi</button>
.css
button {
opacity: 0.5;
}
.js
button1.addEventListener('click', function() {
this.style.opacity = (this.style.opacity == 1.0) ? 0.5 : 1.0;
});
我想你的JS实际上是这个..只需适应它
button1.addEventListener('click', function() {
chrome.style.opacity = (chrome.style.opacity == 1.0) ? 0.5 : 1.0;
});
http://jsfiddle.net/Q4C6g/
使用一键式事件并将 if/else 语句放入其中。
button1.addEventListener('click', function() {
if (chrome.style.opacity = "1.0"){
chrome.style.opacity = "0.5"
}else{
chrome.style.opacity = "1.0"
}
});
只是对你的代码的评论:
> var bool = new Boolean();
你真的不想那样做。布尔对象的存在是为了支持布尔基元,而不是单独使用。此外,在必须分配值之前,不要分配值。将变量初始化为临时值是没有意义的,它当然不会"类型化"变量。
ECMAScript 变量没有类型,它们的值有。所以当你以后做:
> bool = true;
bool 不再引用以前分配的对象,它现在的值为 true
。
无论如何,这里可以完全避免使用bool,请参阅其他答案。
哦,为什么你应该避免布尔对象:
// Create a Boolean object with a value of false
var foo = new Boolean(false);
// Evaluate in expression that will call internal getValue method
alert( foo ); // false
// Evaluate in expression that will do Type conversion
alert( !foo ); // false
哎呀!可以肯定的是:
alert( foo == !foo ); // true!!
alert( foo == !!foo ); // false
所以远离布尔对象!即使您利用这种行为来发挥自己的优势,可读性和维护也会受到影响。
相关文章:
- 召回窗口加载事件 - javascript
- 动态创建OnClick事件Javascript
- 全局屏幕span onclick触发一个事件javascript
- 使用react js在跨域上执行事件javascript
- 在change事件javascript上动态添加行
- 在粘贴事件Javascript的输入字段中删除所有非数字字符
- 如何在多表单的输入框中使用输入事件javascript
- 无法查看特定信息.单击事件.Javascript
- 两个文本框事件Javascript
- 阻止鼠标滚轮滚动,但不阻止滚动条事件.JavaScript
- 从 onkeydown 事件 (Javascript) 获取当前用户输入
- “稍后提醒我”/“快速事件”JavaScript解决方案
- 更改我正在侦听的事件Javascript的对象的CSS
- setInterval 不允许同时单击事件 - javascript
- 对每种情况使用一个事件(JavaScript 开关)
- 仅创建第二次点击事件 Javascript
- 每 60 秒仅启动一次事件 (JavaScript)
- 如何连接来自不同文件的事件?Javascript/Backbone
- URL 更改事件 - JavaScript
- 无法在无头模式下使用 watir Webdriver 执行按钮元素的 onclick 事件 javascript