我有一个div,它的transform属性被第三方JS应用程序更改。我想要的是在某个实例下根据当前的transform属性修复transform属性。
为此,如果第三方应用程序对元素样式没有任何更改,则需要添加带有属性transform:current_transform!important
的类,其中!important
标记。
这里我创建了一个示例片段以进行更好的说明
//let this is third party app which is changing the paragraph width and html which code can't be manipulated
function changeHeight(e) {
var x = e.clientX;
var y = e.clientY;
$('p').html(y);
$('p').css('width',x+"px");
}
// Here we need to write Js code so that any change in paragraph css will not be effective, if zoom is yes
$('[name="zoom"]').on('change',function(){
if($(this).val()=='y'){
// Here need to change to the .zoomed propery as widht: current_width!improtant so that paragraph width get fixed to lastly it have.
$('p').addClass('zoomed');
}
else{
$('p').removeClass('zoomed');
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<style>
.zoomed{
width: 50px!important;
}
</style>
<label>zoom yes</label>
<input type="radio" name="zoom" value="y" />
<label>zoom no</label>
<input type="radio" name="zoom" value="n" checked/>
<div style="height:70px;border:1px solid #000000;" onmousemove="changeHeight(event)">
</div>
<p style="background-color:red;"></p>
这只是一个例子,实际情况与转换属性和缩放不同,但关键是动态更改类属性,以使第三方对样式的更改无效。
<style>
标签可以像DOM中的任何其他元素一样进行选择。 - Taplar