【小5聊】jQuery封装简单方法遍历style样式并重新设置值

假如div初始状态设置了style的样式,后续想遍历进行修改

1、代码

//调用
psetstyle(that, "left:{left}px;top:{top}px;width:{width}px;".replace("{left}", 100).replace("{top}", 100).replace("{width}", 100));

setstyle = function (key, value) {

    var newStyle = value;
    var style = $(key).attr("style");

    if (style != undefined && style.length > 0) {
        newStyle = '';
        var arr = style.split(';');
        for (var i = 0; i < arr.length; i++) {
            var item = arr[i];
            var arr2 = value.split(';');
            for (var j = 0; j < arr2.length; j++) {
                var item2 = arr2[j];
                var name = item.split(':')[0].trim();
                var name2 = item2.split(':')[0].trim();
                if (name == name2) {
                    if (newStyle.indexOf(name2) < 0)
                        newStyle += value + ';';
                }
                else {
                    if (newStyle.indexOf(name2) < 0)
                        newStyle += item2 + ';';
                }
            }

            if (newStyle.indexOf(name) < 0)
                newStyle += item + ';';
        }
    }

    $(key).removeAttr("style");
    $(key).attr("style", newStyle);
}

猜你喜欢

转载自blog.csdn.net/lmy_520/article/details/121424344