参考:
> What is the cleanest way to disable CSS transition effects temporarily?
> http://onezeronull.com/2016/10/06/disable-css-transitions-and-animations-temporarily-or-permanently/
每当我需要运行测试JavaScript时,我都使用JavascriptExecutor,但上面的博客都没有说明如何使用它.
我试过了:
js.executeScript(".notransition { -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; -ms-transition: none !important; transition: none !important; }");
但它对我没有任何作用.
编辑:
我试过@AmerllicA提供的答案
public void turnOffCss () { navigate("https://www.bureauofdigital.com"); js.executeScript("*,*:before,*:after { -webkit-transition: none !important; -moz-transition: none !important; -ms-transition: none !important; -o-transition: none !important; transition: none !important; -webkit-transform: none !important; -moz-transform: none !important; -ms-transform: none !important; -o-transform: none !important; transform: none !important; }"); }
@R_404_323@
我在JavaScript Executor上为您的确切问题提出了另一个答案.让我们来澄清JavaScript代码,
>制作样式标记元素.
>使用样式标记值添加id属性.
>制作一个我在另一个答案中回答的CSS的字符串.
>将字符串放入或附加到样式标记中.
>将样式附加到DOM中的head标记.
现在让我们将上述状态写入JavaScript代码:
const styleElement = document.createElement('style'); styleElement.setAttribute('id','style-tag'); const styleTagCSSes = document.createTextNode('*,:after,:before{-webkit-transition:none!important;-moz-transition:none!important;-ms-transition:none!important;-o-transition:none!important;transition:none!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important}'); styleElement.appendChild(styleTagCSSes); document.head.appendChild(styleElement);
使用此代码,您可以将我的另一个答案CSS导入DOM.所以你可以把下面的字符串放到你的JavaScript执行器:
"const styleElement = document.createElement('style');styleElement.setAttribute('id','style-tag');const styleTagCSSes = document.createTextNode('*,:before{-webkit-transition:none!important;-moz-transition:none!important;-ms-transition:none!important;-o-transition:none!important;transition:none!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;-o-transform:none!important;transform:none!important}');styleElement.appendChild(styleTagCSSes);document.head.appendChild(styleElement);"
如果你想恢复这个动作,只需使用:
document.getElementById('style-tag').remove();
希望这些代码可以帮到你.