Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我需要javascript中DOM的帮助_Javascript - Fatal编程技术网

我需要javascript中DOM的帮助

我需要javascript中DOM的帮助,javascript,Javascript,我想创建一个表单,为用户提供3种不同的选项来更改页面的背景色。当用户单击其中一个选项时,背景颜色将更改为匹配。此外,还可以创建一个包含一些基本文本的div。创建一个具有文本区域的表单。使用document.getElementById('yourelementid')既可以查找textarea的值,也可以更改在div中创建的基本文本。(提示:user innerHTML)现在我知道如何创建表单,但我不知道如何让它在用户单击该按钮时更改背景。我根本不了解如何使用innerHTML。如果有人能解释或

我想创建一个表单,为用户提供3种不同的选项来更改页面的背景色。当用户单击其中一个选项时,背景颜色将更改为匹配。此外,还可以创建一个包含一些基本文本的div。创建一个具有文本区域的表单。使用document.getElementById('yourelementid')既可以查找textarea的值,也可以更改在div中创建的基本文本。(提示:user innerHTML)现在我知道如何创建表单,但我不知道如何让它在用户单击该按钮时更改背景。我根本不了解如何使用innerHTML。如果有人能解释或给我一些网站如何理解这一点。多谢各位

好的,这就是我到目前为止所拥有的,我还没有理解它

  <!DOCTYPE html PUBLIC "-//W3C//DTD Xhtml 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  <html xmlns="http:www.w3.org/1999/xhtml">
  <head>
   <title>background-color</title>
  <meta http-equiv="content-type" content="text/html;charset=iso-8859-1" />
 <script language="javascript" type="text/javascript">
  function changeBackgroundColor(objDivID)

   {
    var backColor = new String();

       backColor = document.getElementById(objDivID).style.backgroundColor;
    if(backColor.toLowerCase()=='#A20000C')

    {
    document.getElementById(objDivID).style.backgroundColor = '#DF64BD';

   }
    else
      {
   document.getElementById(objDivID).style.backgroundColor = '#FFDD73';
      }

    }

       </script>
      </head>
      <body>
      <h3>Change background color to:</h3>
      <div id="div1" style="background-color : #A2000C">
       <p><input type="radio" name="color" value="red" />Red<br />
      <input type="radio" name="color" value="pink" />Pink<br />
      <input type="radio" name="color" value="yellow" />Yellow<br />

      </div>
     <input type="button" value="click here"onclick="changeBackgroundColor('div1')"    /> 
      </body>
      </html>

背景色
函数changeBackgroundColor(objDivID)
{
var backColor=新字符串();
backColor=document.getElementById(objDivID).style.backgroundColor;
if(backColor.toLowerCase()='#A20000C')
{
document.getElementById(objDivID).style.backgroundColor='#DF64BD';
}
其他的
{
document.getElementById(objDivID).style.backgroundColor='#FFDD73';
}
}
将背景颜色更改为:
红色
粉红色
黄色

我仍然不知道为什么我的盒子不是那么大,而且没有改变颜色,我仍然必须在那里有一个盒子。请求更改颜色的文本。

InnerHTML基本上是两个标记之间的所有内容(因此是InnerHTML):


以下是如何将页面的背景色设置为文本区域的值:

document.bgColor=document.getElementById('yourelementid').value;

您应该在颜色更改选项上添加一个事件处理程序,如下所示(假设它是一个选择框):


红色
绿色>
document.colorSelect.onchange=函数(){
document.elementToChangeColor.style.backgroundColor=this.value;
}

Mozilla文档描述得相当好。你可能想通读那一页

DOM对象的innerHTML属性以文本形式提供该对象的HTML内容。因此,如果您有HTML:

<div id="myID"><span>Some text here!</span></div>
然后你会在这里看到
一些文本

如果将innerHTML属性设置为HTML字符串,它将更改该值的内容。如果您具有以下javascript,请提供上述HTML:

var theHTML = document.getElementById('myID').innerHTML;
alert(theHTML);
var myDiv = document.getElementById('myID');
myDiv.innerHTML = '<span>Now this is some other text</span>';
var myDiv=document.getElementById('myID');
myDiv.innerHTML='现在这是另一个文本';
ID为
myID
的div将更改为显示包含“现在这是其他文本”的span

要更改背景颜色,请查看更改主体上的CSS属性。将帮助您了解如何做到这一点。您将需要调查
document.body.style

我将使用jQuery:

function selectionMade(color) {
    var body = $('body');
    body.css('background-color', color)

    var divWithSomeText = $('<div/>').Text = 'Some Text';
    body.Add(divWithSomeText);
}
功能选择制作(彩色){
变量body=$('body');
css('background-color',color)
var divWithSomeText=$('').Text='Some Text';
body.Add(divWithSomeText);
}

jQuery使您试图做的事情变得非常简单。如果我是你,我现在就开始使用这个库,这样你以后就可以再次使用它了。

好吧,我当时确实有这个功能。。我只是太迷茫了,弄不清楚它甚至一点都不好笑。我知道我必须做的大多数事情,但要把它放在函数中,这样它才能工作。我只是迷路了。好吧,我说对了,你可以用select作为div,还是这样。。。
var theHTML = document.getElementById('myID').innerHTML;
alert(theHTML);
var myDiv = document.getElementById('myID');
myDiv.innerHTML = '<span>Now this is some other text</span>';
function selectionMade(color) {
    var body = $('body');
    body.css('background-color', color)

    var divWithSomeText = $('<div/>').Text = 'Some Text';
    body.Add(divWithSomeText);
}