Javascript 仅脚本首先更改<;p>;要素
下面是我的页面的javascript:Javascript 仅脚本首先更改<;p>;要素,javascript,html,getelementsbytagname,Javascript,Html,Getelementsbytagname,下面是我的页面的javascript: window.onmouseover = function(){ var body = document.getElementsByTagName("body") var h1 = document.getElementsByTagName("h1"); var a = document.getElementsByTagName("a"); var p = document.getEl
window.onmouseover = function(){
var body = document.getElementsByTagName("body")
var h1 = document.getElementsByTagName("h1");
var a = document.getElementsByTagName("a");
var p = document.getElementsByTagName("p")
for(var j = 0; j < p.length; j++) {
body[j].style.fontFamily = "helvetica";
body[j].style.backgroundColor = "rgb(250, 250, 240)"
p[j].style.fontFamily = "courier";
a[j].onclick = function() {
this.style.backgroundColor = "Black"
}
}
}
window.onmouseover=function(){
var body=document.getElementsByTagName(“body”)
var h1=document.getElementsByTagName(“h1”);
var a=document.getElementsByTagName(“a”);
var p=document.getElementsByTagName(“p”)
对于(var j=0;j
我有一个h1元素,一个a元素和10个p元素。出于某种原因,这段代码只更改第一个p元素的字体,尽管其他一切都可以正常工作?这是为什么?我如何修复它?它可能会在循环中第二次生成错误,因为
body[1]
将无效。移动对象,以便循环中只有p
上的操作。如果只有一个a
元素,并且(当然)只有一个body
,则不能对其中的10个进行迭代。这会在循环的第二次迭代中导致错误。请改用此代码
window.onmouseover = function(){
var body = document.getElementsByTagName("body")
var h1 = document.getElementsByTagName("h1");
var a = document.getElementsByTagName("a");
var p = document.getElementsByTagName("p")
body[0].style.fontFamily = "helvetica";
body[0].style.backgroundColor = "rgb(250, 250, 240)"
a[0].onclick = function() {
this.style.backgroundColor = "Black"
}
for (var j = 0; j < p.length; j++) {
p[j].style.fontFamily = "courier";
}
}
window.onmouseover=function(){
var body=document.getElementsByTagName(“body”)
var h1=document.getElementsByTagName(“h1”);
var a=document.getElementsByTagName(“a”);
var p=document.getElementsByTagName(“p”)
正文[0]。style.fontfamic=“helvetica”;
正文[0]。style.backgroundColor=“rgb(250250240)”
a[0]。onclick=function(){
this.style.backgroundColor=“黑色”
}
对于(var j=0;j