run |
new function(){ with(document){
var _name = '_lister_';
var _sharedcss = 'color: menutext; background-color: menu';
var _ifr = createElement('iframe');
_ifr.style.cssText = 'display: none; '+ _sharedcss;
return self[_name] = {
show: function(ls){
var div = createElement('div');
div.style.cssText = [
'position: absolute; z-index: 999; left: 0px',
'top: '+ Math.max(body.scrollTop, documentElement.scrollTop) +'px',
'padding: 5px', _sharedcss].join(';');
var e, m, r = /^(.+?)\D?(\d+)$/;
for(var x, i = 0, l = ls.length; i < l; i++){
if((m = r.exec(ls[i]))){
e = createElement('a');
e.href = ['javascript:', _name,'.load(', m[2], ')'].join('');
e.innerHTML = m[1];
} else e = createTextNode(ls[i] || '|');
div.appendChild(e);
div.appendChild(createTextNode(' '));
}
e = createElement('button');
e.innerHTML = 'x';
e.style.cssText = ['vertical-align: middle; border: none',
'padding-left: 5px', _sharedcss].join(';');
div.appendChild(e).onclick = function(){ body.removeChild(div) };
div.appendChild(createElement('br'));
body.appendChild(div).appendChild(_ifr);
},
load: function(id){
var s = createElement('script');
s.src = ['http://wedata.net/items/', id, '.json?callback=',
_name, '.run'].join('');
body.appendChild(s);
},
run: function(o){
var p = self.open;
self.open = this.open;
with(self) eval(o.data.run);
self.open = p;
},
open: function(url, nam, opt){ with(_ifr){
var m = /\bwidth\s*=\s*(\d+)/.exec(opt);
if(m) width = +m[1];
m = /\bheight\s*=\s*(\d+)/.exec(opt);
if(m) height = +m[1];
name = nam;
src = url;
style.display = 'block';
}}
}
}} |
sample |
javascript:({id:2272,ls:['Eijiro:2270',,'delicious:2271','Hatebu:2275'],cb:'_f',d:document,_:function(s){with(this){self[cb+=id]=function(o){eval(o.data.run).show(list)};s=d.createElement('script');s.src='http://wedata.net/items/'+id+'.json?callback='+cb;d.body.appendChild(s)}}}._()) |