Nik
Nik

Reputation: 530

lightweight dialog plugin that doesn't require css

I'm looking for a lightweight dialog plugin that doesn't require css. I need it for a userscript, which means I can't include a css file

Any ideas?

Upvotes: 0

Views: 161

Answers (2)

Luca
Luca

Reputation: 1100

you can simply set the innerHTML of a style tag created via javascript. In this way you obtain an inlined stylesheet.

E.g.

var styleText = "body { background-color: red } div { color: lime }";
var styleBlock = document.createElement("style");
styleBlock.innerHTML = styleText;
document.head.appendChild(styleBlock);

Another idea is to use a dataURI of a css file:

E.g.

var linkEl = document.createElement("link");
linkEl.href = "data:text/css;base64,Ym9keSB7IGJhY2tncm91bmQtY29sb3I6YmxhY2sgfQo=";
linkEl.rel = "stylesheet";
linkEl.type = "text/css";
document.head.appendChild(linkEl); 

Upvotes: 1

airportyh
airportyh

Reputation: 22668

You could dynamically inject a css file from a remote domain, which is what disqus does, for example.

var link = document.createElement('link')
link.rel = 'stylesheet'
link.href = 'http://yourhost.com/your.css'

You'd make to make sure your css has low chance of clashing with your user site's styles by restricting the styles using id or class names.

Upvotes: 2

Related Questions