在Button按钮上恢复为内联样式 - jQuery

时间:2016-11-28 18:48:58

标签: jquery html css

我在页面上有一个ul li网格,它从插件中应用了内联样式。如果复选框不适用于该项目,则可以在此列表上方选择隐藏/显示任何内容的选项。

我正在尝试添加'重置'按钮会将这些样式恢复正常,因为它们在页面加载时,因此就像复选框选择没有发生一样。

以下是页面加载时一种样式的示例。请注意,它们是从页面的顶部和左侧设置的,因此我无法对特定属性进行硬编码 - 这是来自插件。

position: absolute;
left: 330px;
top: 1320px;

我知道我可以将所有样式与jQuery一起删除,但我不知道是否可以将内联样式恢复为页面加载。

2 个答案:

答案 0 :(得分:1)

试试这个:

<script>
$(function(){
    var default_styles = new Array();

    default_styles = $('ul li').map(function(){ return $(this).attr('style') }).get();

    $('button').click(function(){
        $('ul li').each(function( i,v ){
            $(v).attr('style', default_styles[i] )
        });
    });
});
</script>

小提琴补充道:https://jsfiddle.net/ehpmvqL7/3/

答案 1 :(得分:0)

这有点hacky但你可以在插件修改内联样式之前使用jquery对象上的.attr()方法读出元素样式属性的值。

然后,您可以引用那些存储的“原始样式”,但稍后您需要在代码中引用(例如在单击复选框后将其设置回来)。