我有一个元素,其位置已通过我的页面上的javascript更改,我需要检索它的原始(外部)样式。实现这一目标的最佳方法是什么?我假设必须有比删除元素和创建新元素更好的东西,因此它具有默认值。欢迎使用JQuery解决方案。
谢谢!
答案 0 :(得分:0)
Jquery.Css方法将“style”属性注入已修改的元素,并覆盖外部文件中的所有先前的css。 要恢复默认css,您只需删除“样式”属性即可。
$(selector).removeAttr("style");
答案 1 :(得分:0)
将原件存储为元素的数据属性:
$('#element').data('original-css',$('#element').css('top')).css('top','20px');
然后恢复:
$('#element').css('top', $('#element').data('original-css'));
答案 2 :(得分:0)
因此,假设通过直接修改其样式(例如使用jQuery的.css()
方法)重新定位元素,您可以这样做:
// De-jQuerify the element. We need to get the style directly
var element = element.length ? element[0] : element;
// Store the currently-defined positioning that may be overriding
// the stylesheet.
var cur = {top: element.style.top, left: element.style.left};
// Remove any overriding positioning
element.style.left = element.style.top = null;
// Find the position of the element.
var pos = $(element).offset(); // Or $(element).position()
// Restore the old styles
$(element).css(cur);
对于没有覆盖其位置的元素,这也应该正常工作。