Skip to content

Commit b68dfef

Browse files
save file
1 parent 7b8d6c2 commit b68dfef

File tree

1 file changed

+161
-0
lines changed

1 file changed

+161
-0
lines changed
Lines changed: 161 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,161 @@
1+
2+
3+
<output-html>
4+
5+
<template shadowrootmode=open>
6+
7+
<style>
8+
9+
:host
10+
{display:flex;flex-direction:column;height:100%}
11+
12+
#hdr
13+
{display:flex}
14+
15+
#hldr
16+
{flex:1;box-sizing:border-box;position:relative}
17+
iframe
18+
{width:100%;height:100%}
19+
#glass
20+
{position:absolute;left:0;top:0;width:100%;height:100%;display:none}
21+
22+
</style>
23+
24+
<div id=hdr>
25+
<div style='flex:1'></div>
26+
<button id=kill style='margin-right:20px'>kill</button>
27+
</div>
28+
29+
<div id=hldr>
30+
<iframe></iframe>
31+
<div id=glass></div>
32+
</div>
33+
34+
</template>
35+
36+
<script>
37+
38+
(function output_html({mod,dom,host}){
39+
40+
var obj = {
41+
version : 'v2.0',
42+
};
43+
44+
var ext,$;
45+
46+
obj.initmod=function(params){
47+
48+
ext = params.ext;
49+
$ = params.$;
50+
51+
}//initmod
52+
53+
54+
//vars:-
55+
56+
var hldr;
57+
var iframe;
58+
var glass;
59+
60+
61+
var btn = {};
62+
63+
64+
//:
65+
66+
67+
obj.init = async function(){
68+
}//init
69+
70+
71+
//:
72+
73+
74+
obj.initdom = function(rootnode){
75+
76+
shadow = host.shadowRoot;
77+
78+
var style = $(shadow,'style');
79+
$.stylesheet.insert(style,'button','.icon');
80+
81+
82+
var hdr = $(shadow,'#hdr');
83+
84+
$(hdr,'#kill').onclick = btn.kill;
85+
86+
87+
hldr = $(shadow,'#hldr');
88+
iframe = $(shadow,'iframe');
89+
glass = $(shadow,'#glass');
90+
91+
92+
}//initdom
93+
94+
95+
//:
96+
97+
98+
btn.kill = function(){
99+
100+
kill();
101+
102+
}//kill
103+
104+
105+
obj.glass = function(show=true){
106+
107+
var display = 'none';
108+
if(show){
109+
display = 'block';
110+
}
111+
glass.style.display = display;
112+
113+
}//glass
114+
115+
116+
obj.horiz = function(){
117+
118+
iframe.style.width = '100%';
119+
iframe.style.height = '50%';
120+
121+
}//horiz
122+
123+
124+
obj.vert = function(){
125+
126+
iframe.style.width = '50%';
127+
iframe.style.height = '100%';
128+
129+
}//vert
130+
131+
132+
133+
obj.srcdoc = function(html){
134+
135+
iframe.srcdoc = html;
136+
137+
}//srcdoc
138+
139+
140+
obj.kill = function(){return kill()} //d
141+
142+
function kill(){
143+
144+
var niframe = iframe.cloneNode(true);
145+
niframe.srcdoc = null;
146+
hldr.replaceChild(niframe,iframe);
147+
iframe = niframe;
148+
149+
}//kill
150+
151+
152+
153+
154+
return obj;
155+
156+
})//output_html
157+
158+
</script>
159+
160+
</output-html>
161+

0 commit comments

Comments
 (0)