Ich schreibe ein GM-Skript, und eine Sache, die ich realisierte, dass ich immer wieder mache, macht den gleichen Code immer und immer wieder. Insbesondere die Stileigenschaft.Wie organisieren Sie Javascript Verbose?
function createButton() {
var a = document.createElement('a');
a.href = '#';
a.innerHTML = 'Print Topic';
a.style.position = 'absolute';
a.style.right = '3em';
a.style.top = '6em';
a.style.fontFamily = 'Arial,Helvetica,sans-serif';
a.style.fontWeight = 'bold';
a.style.fontSize = '125%';
a.style.background = '#777777 none repeat scroll 0 0';
a.style.color = 'white';
a.style.padding = '6px 12px';
document.body.insertBefore(a, document.body.lastChild);
}
Wie Sie in meinem Beispielcode sehen können, schrieb ich wiederholt a.style oft. Haben Sie Techniken, mit denen Sie dieses Chaos vermeiden? Nur aus Gründen der Anmut.
DANK -
Jungs, hier ist der reduzierte Code:
function createButton() {
var a = document.createElement('a');
var css = document.createElement('style');
css.type = 'text/css';
css.innerHTML = '#prt { position:absolute; right:3em; top: 6em; font-family: Arial,Helvetica,sans-serif; font-weight:bold; font-size:125%; background: #777777 none repeat scroll 0 0; color: white; padding: 6px 12px;}'
a.href = '#';
a.innerHTML = 'Print Topic';
a.id = 'prt';
document.body.insertBefore(a, document.body.lastChild);
document.body.appendChild(css);
}
LOL, die sicherlich besser
Soll Ihr "reduzierter Code" ein Witz oder etwas sein? –
Sie können die Stilattribute auch in einer separaten .css-Datei definieren und dann die Datei auf Ihrer Seite mit einem Link-Tag verknüpfen. Eine weitere Alternative besteht darin, die Stilattribute in einem Stil-Tag zu definieren. Dies würde die Notwendigkeit vermeiden, Stilattribute in JavaScript-Code zu definieren. – AndreiM
HTML4.01 erlaubt keine Stilelemente im Körper, so dass Browser sie ignorieren können; Chrome hat das in der Vergangenheit gemacht, ich weiß nichts über aktuelle Versionen - siehe http://StackOverflow.com/Questions/524696/ – Christoph