如何创建可互换的说明
How can I create interchangeable instructions?
document.body.style.backgroundColor="#F00";
此语句将正文背景颜色的样式设置为红色。
在我的原始代码中,我有一个函数,该函数按标签名称将元素分配给全局变量element
。我发现调用这个函数后我可以这样做:element.style.backgroundColor="#F00";
但是,似乎没有任何方法可以替代语句的属性部分。下面我提出了最明显的方法,尽管我也尝试将参数分配给变量和各种报价组合。
function assignStyle(value) {
document.body.style.backgroundColor = value;
}
function attemptStyle(property,value) {
document.body.style.property = value;
}
button { font-family: monospace; }
<button onmouseover="assignStyle('#131519');" onmouseout="assignStyle('#FFF');">
function assignStyle(value){}
</button><br />
<button onmouseover="attemptStyle('backgroundColor','#137619');" onmouseout="attemptStyle('backgroundColor','#FFF');">
function attemptStyle(property,value){}
</button>
编辑:这个问题不是如何使用变量作为名称向 JavaScript 对象添加属性的副本?。这个问题包含jQuery,许多人,包括我自己,几乎一无所知。我的问题与基本的JavaScript有关。另外,我想知道如何将属性添加到元素,从而通过将参数传递给函数参数。就我而言,变量使问题进一步复杂化。
我不太确定你所说的"替换"backgroundColor
是什么意思,但我敢打赌你正在尝试以编程方式访问backgroundColor
属性。如果是这样,您的第二个函数需要以下修改:
function attemptStyle(property,value){
document.body.style[property]=value;
}
因此,如果您调用attemptStyle('backgroundColor', 'red')
,则将使文档的背景色变为红色。
这可能无法回答您的问题,但可以解决您的问题。您正在尝试在鼠标悬停在元素上时更改颜色。这可以简单地用CSS完成
<style>
button {
background-color:#fff;
}
button:hover {
background-color: #131519
}
</style>
<button>
function assignStyle(value){}
</button><br />
<button>
function attemptStyle(param,value){}
</button>
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- 下拉选择可自动更改第二个下拉选择
- knockoutjs可观察数组
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- 调整窗口大小时,可拖动的对象会出现在容器外部
- 手风琴可点击并悬停
- 将纯文本URL转换为可单击链接
- 一点javascript元编程&可链接的设置器
- 将事件聚焦/模糊在可编辑内容的元素上
- 带有加号的电话号码验证(可选)
- 为什么HTML5拖放的目标是孩子?(可排序列表)
- 以可优化的方式使用requirejs加载模板
- 将日期时间从json转换为可读格式
- 从控制器继承了隔离的作用域以生成可重用的指令
- RubyonRails中的可点击表行
- Javascript 可选类型提示
- 如何在可分组的剑道网格中设置空数据文本
- 为什么$scope和'这'关键字在控制器内部可互换使用
- 如何创建可互换的说明
- Javascript /可互换函数