Stu*_*ing 7 html javascript css
我是JavaScript的新手,作为我大学项目的一部分,我需要包括一些.我创建了一个简单的.js文件,并使用它将其链接到我的index.html文件<script src="main.js"></script>
我创建了另一个名为的页面,sellYourHome.html并添加了一个<section>带有表的标签,并创建了一个简单的表单来计算一个委托,并在输入字段中显示结果.
function comCalc()
{
prcHouse = parseFloat(document.getElementById('prcHouse').value);
commision = 0.25;
result = prcHouse * commision;
document.getElementById('prcHouse').value = result.toString();
}
Run Code Online (Sandbox Code Playgroud)
那很有效.
现在在这个函数下,我想创建另一个拾取<div>元素并更改为background-color蓝色的元素.
所以我创建了一个表单index.html并以相同的方式将相同的.js文件链接到它.
这是我的HTML:
<div id="mainContent">
<p>hello</p>
<form id="bgColor">
<table>
<tr>
<td>
<input type="button" value="blue" onclick="bgColor('blue');">
</td>
</tr>
</table>
</form><!-- end of bgColor Form-->
</div>
Run Code Online (Sandbox Code Playgroud)
我的javascript就像这样:
function comCalc()
{
prcHouse = parseFloat(document.getElementById('prcHouse').value);
commision = 0.25;
result = prcHouse * commision;
document.getElementById('prcHouse').value = result.toString();
}
function bgColor(color)
{
var div = document.getElementById('mainContent');
div.style.background=color;
}
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我在控制台上收到此错误:
未捕获的TypeError:String不是函数
我在一个名为SWRIron的浏览器中运行它(它基于Chrome并且是HTML5兼容的).
我究竟做错了什么?
这是因为你的函数名称bgColor,因为它bgcolor是HTML元素的一个属性,它与你的函数冲突bgcolor,浏览器将其视为attribute(字符串),但你将它用作函数,所以它说string is not a function.因此,将函数名称更改为此类其他任何内容
function setBgColor(color)
{
var div = document.getElementById('mainContent');
div.style.background = color;
}
Run Code Online (Sandbox Code Playgroud)
用它作为
<input type="button" value="blue" onclick="setBgColor('blue');" />
Run Code Online (Sandbox Code Playgroud)