对于所有使用文本对齐对齐对齐的类,使用javascript将文本对齐更改为左对齐

对于所有使用文本对齐对齐对齐的类,使用javascript将文本对齐更改为左对齐,javascript,iphone,css,uiwebview,Javascript,Iphone,Css,Uiwebview,我需要在移动设备上显示一些静态HTML内容。这些文件已经有了CSS样式,有很多类 为了提高小屏幕上的可读性,我想将所有带有text align:justify的类更改为text align:left 我认为最合适的解决方案是修改webviewdiffinishload方法中的样式。如何使用Javascript实现这一点 提前感谢这样解决: var styleSheets = document.styleSheets; for( i=0; i < styleSheets.length; i+

我需要在移动设备上显示一些静态HTML内容。这些文件已经有了CSS样式,有很多类

为了提高小屏幕上的可读性,我想将所有带有text align:justify的类更改为text align:left

我认为最合适的解决方案是修改
webviewdiffinishload
方法中的样式。如何使用Javascript实现这一点

提前感谢

这样解决:

var styleSheets = document.styleSheets;
for( i=0; i < styleSheets.length; i++ ){
    for( j=0; j < styleSheets[i].cssRules.length; j++){
        var rule = styleSheets[i].cssRules[j];            
        if(rule.style.textAlign=='justify'){
            rule.style.textAlign='left';
        }
    }
}
var styleSheets=document.styleSheets;
对于(i=0;i

这是可行的,但我仍然对没有jQuery的更优雅的解决方案感兴趣。

这里有一种可怕的方式,我不会实际使用它,因为它为每个元素添加了内联样式。我想不出任何其他方法来完成它,而不指定您希望它作用于的类或元素


不过这个实验很有趣。哦,你不需要jquery。

这个问题很老了,但是,我想我会提供我的答案供参考。不确定这是否有助于满足您的需要,但是,这里有一种非jQuery的方式,我在过去使用过,将text align:left应用于整个正文

    NSString* css = @"\"body { text-align:left;}\"";
    NSString* js = [NSString stringWithFormat:
                    @"var styleNode = document.createElement('style');\n"
                    "styleNode.type = \"text/css\";\n"
                    "var styleText = document.createTextNode(%@);\n"
                    "styleNode.appendChild(styleText);\n"
                    "document.getElementsByTagName('head')[0].appendChild(styleNode);\n",css];
    [self.webView stringByEvaluatingJavaScriptFromString:js];