我正在使用Jquery所见即所得的编辑器,它在运行时自动将代码添加到textarea。
我的问题是它插入了一个样式=“width:320px”的内联样式,我需要将其关闭,因为我已经设置了样式以使其达到100%
无论如何使用jquery
删除或覆盖该代码它基本上是在一个名为wysiwyg的类的div中添加内联样式...
这样:
<div class="wysiwyg" style="width:320px">
我遇到麻烦的编辑叫做:jWYSIWYG
答案 0 :(得分:5)
如果要覆盖内联样式,您有两个选择:
纯CSS:
.wysiwyg {
width: 120px !important;
}
jQuery的:
$(".wysiwyg").css({width:120});
如果您想使用其他地方的样式,您也可以这样做:
$(".wysiwyg").css({width:"inherit"});
答案 1 :(得分:1)
使用jQuery重置width
:
$('.wysiwyg').css('width', '100%');
或者,您可以完全删除style
属性:
$('.wysiwyg').removeAttr('style');
答案 2 :(得分:1)
您是否曾尝试使用以下方式声明自己的CSS:
!important
例如
#textarea-id { width: 300px !important; }
答案 3 :(得分:0)
您可以使用!important定义新的css规则,也可以使用jquery:
$("rule target").width(value);
答案 4 :(得分:0)
这应该适合你:
$('.wysiwyg').removeAttr("style");
或者您可以将宽度设置为100%
$('.wysiwyg').css("width", "100%");
答案 5 :(得分:0)
如果您有服务器端DOM操作模块,则可以使用removeAttribute()
DOM方法在服务器端删除不需要的属性。
或者您可以尝试创建自己的WYSIWYG JS模块的略微修改版本。