【发布时间】:2020-09-19 21:26:48
【问题描述】:
我正在尝试通过单击按钮来更改图像大小。像(如果我点击名为 100 的按钮,图像大小应变为 100x100)。
html代码为:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="style.css">
<title>Document</title>
</head>
<body>
<img class="image" src="pic.jpg" alt="pic">
<div class="btn">
<button type="button" class="h100xw100">100</button>
<br>
<button type="button" class="h200xw200">200</button>
<br>
<button type="button" class="h300xw300">300</button>
<br>
<button type="button" class="h400xw400">400</button>
</div>
<script src="index.js"></script>
</body>
</html>
JS代码是
var image= document.getElementsByTagName("img");
for(var i=0;i<document.getElementsByTagName("button").length;i++)
{
document.getElementsByTagName("button")[i].addEventListener("click",function()
{
action(this.innerHTML);});
}
function action(value)
{
for(var i=0;i<document.getElementsByTagName("button").length;i++)
{
switch(value)
{
case "100":
image.style.width="100";
image.style.height="100";
break;
case "200" :
image.style.width="200";
image.style.height="200";
break;
case "300" :
image.style.width="300";
image.style.height="300";
break;
case "400" :
image.style.width="400";
image.style.height="400";
break;
default: alert("max-size reached");
}
}
}
我什至也使用过 querySelector。但不工作!
我也尝试过在没有匿名函数的情况下调用函数操作
喜欢
document.getElementsByTagName("button")[i].addEventListener("click",action);
【问题讨论】:
-
执行代码时获取对象的方法是否有效?
-
是的,它正在工作。
-
可以跳过
switch,直接将value分配给width和height吗?
标签: javascript html