他の人のページのテキストスタイルを修正するためのブックマークレットを作成したいと思います。特に、「text-align:justify」の要素を見つけて、「text-align:left」に変更したいと思います。しかし、それらの要素を見つける方法はわかりません。これは任意のWebページで使用されるブックマークレットであるため、Javascriptライブラリ(jQueryなど)に頼る必要はありません。
2 に答える
1
ここ:
var walkTheDOM = function walk ( node, func ) {
if ( node.nodeType !== 1 ) return;
func( node );
node = node.firstChild;
while ( node ) {
walk( node, func );
node = node.nextSibling;
}
};
walkTheDOM( document.body, function ( elem ) {
if ( getComputedStyle( elem ).textAlign === 'justify' ) {
elem.style.textAlign = 'left';
}
});
ライブデモ: http: //jsfiddle.net/W3BUe/1/
于 2012-09-16T21:32:36.923 に答える
1
これにより、のすべての要素が検索text-align: justify
され、境界線が赤に設定されます。始めるには十分なはずです。注:これはあまり効率的ではありませんが、リクエストに対する適切な効率的な解決策はありません。パフォーマンスを向上させるには、関連するタグのみを検索してみてください。(たぶん、PとDIVをチェックするだけでいいですか?)
// Get all elements
var els = document.getElementsByTagName('*');
// Search for style: text-align = justify.
for(var i = 0, el; el = els[i]; i++) {
if(getComputedStyle(el).textAlign == 'justify') {
el.style.border = '1px solid #f00';
}
}
于 2012-09-16T21:29:17.973 に答える