用于切换文档背景颜色的javascript按钮
大家好, 我需要使用JavaScript创建一个按钮,即当我单击它时,它将从白色变为黑色和向后更改背景颜色. 我的意思是,每次击中它时,都会在白色和黑色之间更改Colo. 您能为此告诉我JavaScript吗?
# 回答1
到目前为止,您有什么?
# 回答2
我有代码可以在2种背景颜色之间更改. 这是背景 我想更改网页的身体的颜色. 代码是:
选择 | 换行 | 行号
- function changeBackgroundColor()
- {
- var backColor = new String();
- backColor = document.getElementById().style.backgroundColor;
- if(backColor.toLowerCase()=='#e2e2e2' || backColor.toLowerCase()=='rgb(227, 227, 227)')
- {
- document.getElementById().style.backgroundColor = '#000000';
- }
- else
- {
- document.getElementById().style.backgroundColor = '#e2e2e2';
- }
- }
# 回答3
实际上,整个项目就是这样:我想拥有一个按钮(或网页中的任何对象,现在并不重要),当我单击它时,它将更改两个 标题的BG图像 和 身体的背景颜色 还向后工作. 到目前为止的代码: 改变身体BG颜色:
选择 | 换行 | 行号
- function changeBackgroundColor()
- {
- var backColor = new String();
- backColor = document.getElementById("body").style.backgroundColor;
- if(backColor.toLowerCase("body")=='#e2e2e2' || backColor.toLowerCase("body")=='rgb(227, 227, 227)')
- {
- document.getElementById("body").style.backgroundColor = '#000000';
- }
- else
- {
- document.getElementById("body").style.backgroundColor = '#e2e2e2';
- }
- }
更改标头图像 (这是一个更改图像,但我也想向后工作)
选择 | 换行 | 行号
- function changeHeaderImage()
- {
- var imgPath = new String();
- imgPath = document.getElementById("header").style.backgroundImage;
- if(imgPath == "url(images/header_bg.jpg)" || imgPath == "")
- {
- document.getElementById("header").style.backgroundImage = "url(images/header_black.jpg)";
- }
- else
- {
- document.getElementById("header").style.backgroundImage = "url(images/header_bg.jpg)";
- }
- }
谢谢你的帮助.
# 回答4
因此,基本上您只想调用两个功能? 为什么不这样做呢?
# 回答5
因为他们不起作用. 到目前为止,我只是成功地更改了标头的BG图像,并且它无法向后工作.
# 回答6
好吧,首先,如果您想改变身体的背景颜色,则使用 document.bgcolor . 至于背景图像,运行该代码没有问题. 除了您的背景和图像之间的外部空间外,它的工作正常. 但是我认为这是一个换位错误,否则它甚至第一次也不会运行.
# 回答7
我的意思是向后说的是,我想每次点击按钮时都要更改图像(或颜色),而不仅仅是两次. 对不起,我的英语不是很好.
# 回答8
我知道你的意思. 这个对我有用.
# 回答9
由于某种原因,它对我不起作用,因此我使用了一个更改CSS课程并起作用的脚本. 我有上面的代码要更改(切换是我要寻找的单词)BG颜色,但我无法正常工作.
选择 | 换行 | 行号
- function changeBackgroundColor()
- {
- var backColor = new String();
- backColor = document.backgroundColor;
- if(backColor.toLowerCase()=='#e2e2e2' || backColor.toLowerCase()=='rgb(227, 227, 227)')
- {
- document.backgroundColor = '#0f0f0f';
- }
- else
- {
- document.backgroundColor = '#e2e2e2';
- }
- }
# 回答10
我将上一个脚本更改为
选择 | 换行 | 行号
- function changeBackgroundColor()
- {
- var backColor = new String();
- backColor = document.body.style.backgroundColor;
- if(backColor.toLowerCase()=='#0f0f0f' || backColor.toLowerCase()=='rgb(15, 15, 15)')
- {
- document.body.style.backgroundColor = '#ffffff';
- }
- else
- {
- document.body.style.backgroundColor = '#0f0f0f';
- }
- }
有效. 谢谢
# 回答11
嗨,一种更好的方法是使用CSS选择器 /类分配不同的配色方案,然后您可以使用JavaScript在它们之间切换它们 将类添加到元素中:
选择 | 换行 | 行号
- document.getElementById("MyElement").className += " MyClass";
从元素中删除类:
选择 | 换行 | 行号
- document.getElementById("MyElement").className =
- document.getElementById("MyElement").className.replace
- ( /(?:^|\s)MyClass(?!\S)/ , '' )
- /* code wrapped for readability - above is all one statement */
在一个野外活动中这样做:
选择 | 换行 | 行号
- <script type="text/javascript">
- function changeClass()
- {
- // code examples from above
- }
- </script>
- ...
- <button onclick="changeClass()">My Button</button>
更好的是,请使用一个框架(在此示例jQuery中),该框架允许您执行以下操作:
选择 | 换行 | 行号
- $j('#MyElement').addClass('MyClass');
- $j('#MyElement').removeClass('MyClass');
- $j('#MyElement').toggleClass('MyClass');
并且:
选择 | 换行 | 行号
- <script type="text/javascript">
- function changeClass()
- {
- // code examples from above
- }
- $j(':button:contains(My Button)').click(changeClass);
- </script>
- ...
- <button>My Button</button>
问候 Omer Aslam
标签: Javascript