Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.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 应用样式转换:缩放(xValue、yValue)时触发浏览器事件_Javascript_Browser_Scale_Css Transforms_Dom Events - Fatal编程技术网

Javascript 应用样式转换:缩放(xValue、yValue)时触发浏览器事件

Javascript 应用样式转换:缩放(xValue、yValue)时触发浏览器事件,javascript,browser,scale,css-transforms,dom-events,Javascript,Browser,Scale,Css Transforms,Dom Events,在我的网页中,当transform属性应用于div标记时,我需要使用JavaSCript处理更改。我的方法是使用eventListeners。但我无法找出缩放div标记时触发的事件 // html ement <div id='my-container'> ... some conetent </div> // applying CSS style by other modules using javaScript document.getElementById('m

在我的网页中,当transform属性应用于div标记时,我需要使用JavaSCript处理更改。我的方法是使用eventListeners。但我无法找出缩放div标记时触发的事件

// html ement
<div id='my-container'> ... some conetent </div>

// applying CSS style by other modules using javaScript
 document.getElementById('my-container').style.transform ='scale(0.8,0.8)'

// My JS code to handled the support 'my-container' against scale css
document.getElementById('my-container').addEventListener('??????',console.log);
//html
... 一些探索者
//其他模块使用javaScript应用CSS样式
document.getElementById('my-container').style.transform='scale(0.8,0.8)'
//我的JS代码处理对缩放css的“我的容器”支持
document.getElementById('my-container').addEventListener('?????',console.log);
请告诉我缩放元素后是否触发任何事件

或者我需要使用任何其他方法来处理这种情况吗

注意:尝试过的animationstart、animationend、transitionend事件侦听器

样式
属性更改时,可以使用触发函数。
set
回调函数中的
prop
参数定义了已更改的样式,因此可以使用
if
语句检查正在更改的属性

constelementstyle=newproxy(document.getElementById('my-container').style,{set:function(o,prop,style){
if(prop==“transform”){
//样式转换更改时的todo
console.log(“转换已更改”);
}
o[prop]=风格;
}});
elementStyle.transform=“比例(0.8,0.8)”;//触发器控制台.log
elementStyle.color=“绿色”//不触发函数调用

。。。一些conetent
你不需要一个事件监听器,因为缩放后的下一行将立即执行。我猜你的问题是来自CSS转换的缩放动画,JS无法知道何时完成。(或许可以,但不太可能)。因此,与其使用超时,不如使用超时。可能与我使用动画事件尝试过的相同,转换样式不会触发任何动画事件@Randycasburn可能这个答案就是您要寻找的答案。谢谢答案,谢谢答案,但只有当我们使用elementStyle对象更改样式时,它才起作用。请分别尝试document.getElementById('my-container').style.transform='scale(0.8,0.9')。我的观点是,如果它是从不同的脚本更改的,那么我如何处理它。