Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.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 JS函数odblclick事件_Javascript - Fatal编程技术网

Javascript JS函数odblclick事件

Javascript JS函数odblclick事件,javascript,Javascript,我需要调整图片的大小,第一次双击使其变大,第二次双击使其变为原始大小。这是一个学校作业,我不擅长JS,英语是我的第三语言,所以请不要生气。 我的img标签放在body和JS函数中 <img ID="obr" src="pes.png" width="700" height="50" ondblclick="big()" ondblclick="old()"> function big() { obr.width="750";

我需要调整图片的大小,第一次双击使其变大,第二次双击使其变为原始大小。这是一个学校作业,我不擅长JS,英语是我的第三语言,所以请不要生气。 我的img标签放在body和JS函数中

    <img ID="obr" src="pes.png" width="700" height="50" ondblclick="big()" ondblclick="old()">

    function big()  {
                obr.width="750";
                obr.height="600";
    }

    function old()  {
            obr.width="700";
            obr.height="550";
    }

函数大(){
obr.width=“750”;
obr.height=“600”;
}
函数old(){
obr.width=“700”;
obr.height=“550”;
}
用于使图像更大,但不会缩小。
我感谢你的每一句话。感谢您的时间和帮助。

不能将两个事件侦听器附加到具有属性的元素。因此,您需要跟踪函数内部的状态

功能切换大小(img){
var currentSize=img.style.width
变量宽度='200px'
变量高度='300px'
如果(currentSize==“200px”){
宽度='400px'
高度='600px'
}
img.style.width=宽度;
img.style.height=高度;
}

同一元素上不能有两次相同的事件处理程序。如果要在值之间切换,只需添加一个
ondbl单击即可,如:

<img ID="obr" src="pes.png" width="700" height="550" ondblclick="toggle()"
假设您已经为此图像声明了名为
obr
的变量

演示:

const obr=document.getElementById('obr');
函数切换(){
obr.width=obr.width==100?400:100;
目标高度=目标高度==100?400:100;
}

您可以使用单独的css类,并按如下方式进行切换:

var img=document.getElementById(“obr”)
函数切换(){
img.classList.toggle(“大”)
}
img{
高度:700px;
宽度:550px;
}
大号{
高度:750px;
宽度:600px;
}

这里我使用了
css scale属性
并切换了一个类。希望这会更容易理解

const img=document.querySelector('#obr');
img.addEventListener('dblclick',函数(e){
img.classList.toggle('large');
});
#obr{
变换:比例(1);
变换原点:0;
转变:转变6s;
}
#大号{
变换:尺度(2);
}

您好,您可以使用
切换,例如:

constmydiv=document.getElementById('myDiv');
myDiv.addEventListener('dblclick',()=>myDiv.classList.toggle('div-new')
div{
背景颜色:蓝色;
宽度:50px;
高度:50px;
}
新分区{
宽度:100px;
高度:100px;
}
$(“#obr”).dblclick(函数(){
$(这个).toggleClass(“大”);
});
.big{
高度:400px;
宽度:400px
}


这里的
obr
是什么?@palaѕ在它的图像中,它具有
id=obr
,并作为JavaScript变量强制转换到
窗口
。因为不能有两个事件处理程序。切换类…查看
元素.classList.Toggle
如何操作?你有解释文章吗?谢谢你,tho。
function toggle()  {
   obr.width= obr.width == 700 ? 750 : 700;
   obr.height = obr.height == 550 ? 600 : 550;
}