-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbilayer.html
181 lines (166 loc) · 5.99 KB
/
bilayer.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<script type="text/javascript" src="jsmol/JSmol.min.js"></script>
<script type="text/javascript">
var Info = {
color: "#FFFFFF", // white background
height: 400,
width: "100%", // fill the JSMol box to its container's width
coverImage: "images/white.png",
deferApplet: true, // don't load until user clicks on JSMol box
deferUncover: true, // don't uncover until script fully executed
script: "script scripts/bilayer1.txt",
use: "HTML5",
j2sPath: "jsmol/j2s",
serverURL: "http://chemapps.stolaf.edu/jmol/jsmol/php/jsmol.php",
disableInitialConsole: true,
debug: false,
};
// don't load any JSMol until the page itself has finished loading
$(document).ready(function(){
// prevent JSMol from taking entire page
Jmol.setDocument(0);
// create new JSMol instance with parameters defined in Info above
Jmol.getApplet("myJmol1", Info);
// reuse Info parameters for subsequent JSMol instances, changing
// only the script path
Info.script = "script scripts/bilayer2.txt";
Jmol.getApplet("myJmol2", Info);
Info.script = "script scripts/bilayer3.txt";
Jmol.getApplet("myJmol3", Info);
Info.script = "script scripts/bilayer4.txt";
Jmol.getApplet("myJmol4", Info);
// put JSMol code into the correct containers (id=jsmolWindowN)
$("#jsmolWindow1").html(Jmol.getAppletHtml(myJmol1));
$("#jsmolWindow2").html(Jmol.getAppletHtml(myJmol2));
$("#jsmolWindow3").html(Jmol.getAppletHtml(myJmol3));
$("#jsmolWindow4").html(Jmol.getAppletHtml(myJmol4));
// give our JSMol containers breathing room above and below
$("#myJmol1_appletinfotablediv").css({
"margin-top": "10px",
"margin-right": "auto",
"margin-bottom": "10px",
"margin-left": "auto"
});
$("#myJmol2_appletinfotablediv").css({
"margin-top": "10px",
"margin-right": "auto",
"margin-bottom": "10px",
"margin-left": "auto"
});
$("#myJmol3_appletinfotablediv").css({
"margin-top": "10px",
"margin-right": "auto",
"margin-bottom": "10px",
"margin-left": "auto"
});
$("#myJmol4_appletinfotablediv").css({
"margin-top": "10px",
"margin-right": "auto",
"margin-bottom": "10px",
"margin-left": "auto"
});
$("#resetBtn1").click(reset1);
$("#resetBtn2").click(reset2);
$("#resetBtn3").click(reset3);
$("#resetBtn4").click(reset4);
$("#spinBox1").click(spin1);
$("#spinBox2").click(spin2);
$("#spinBox3").click(spin3);
$("#spinBox4").click(spin4);
});
function reset1(event){
Jmol.script(myJmol1, "script scripts/bilayer1.txt")
};
function reset2(event){
Jmol.script(myJmol2, "script scripts/bilayer2.txt")
};
function reset3(event){
Jmol.script(myJmol3, "script scripts/bilayer3.txt")
};
function reset4(event){
Jmol.script(myJmol4, "script scripts/bilayer4.txt")
};
function spin1(event){
if (event.target.checked){
Jmol.script(myJmol1, "set spin x 10; set spin y 10; spin on")
} else {
Jmol.script(myJmol1, "spin off")
};
};
function spin2(event){
if (event.target.checked){
Jmol.script(myJmol2, "set spin x 10; set spin y 10; spin on")
} else {
Jmol.script(myJmol2, "spin off")
};
};
function spin3(event){
if (event.target.checked){
Jmol.script(myJmol3, "set spin x 10; set spin y 10; spin on")
} else {
Jmol.script(myJmol3, "spin off")
};
};
function spin4(event){
if (event.target.checked){
Jmol.script(myJmol4, "set spin x 10; set spin y 10; spin on")
} else {
Jmol.script(myJmol4, "spin off")
};
};
// turn off the JSMol alert that binary file loading is limited
Jmol._alertNoBinary = false;
</script>
<!-- Page Title: Lipid Bilayers -->
<h2>Introduction</h2>
<p>
These scripts show the structure of the phospholipids in a bilayer. (Based
on a molecular model of the bilayer generated by molecular dynamic
calculations, Heller et al. (1993) J.Phys.Chem. <strong>97</strong>: 8343)
</p>
<br>
<h2>Bilayer 1</h2>
<p>
Here is the arrangement of phospholipids in a bilayer. Notice the close
packing of the fatty acyl chains.
</p>
<!-- JSMol Window Container -->
<div id="jsmolWindow1"></div>
<!-- UI Control Box -->
<div style="text-align: center;">
<!-- give the button a right margin for spacing -->
<button type="button" id="resetBtn1" style="margin-right: 10px;">Reset</button>
<input type="checkbox" id="spinBox1"> Spin On/Off
</div>
<br>
<h2>Top View</h2>
<p>
Here is a view from the top. Note the close packing of the polar head
groups.
</p>
<div id="jsmolWindow2"></div>
<div style="text-align: center; margin-top: 10px;">
<button type="button" id="resetBtn2" style="margin-right: 10px;">Reset</button>
<input type="checkbox" id="spinBox2"> Spin On/Off
</div>
<br>
<h2>Crystal Bilayer</h2>
<p>
The bilayer can exist in a highly ordered crystalline state, as shown here.
</p>
<div id="jsmolWindow3"></div>
<div style="text-align: center; margin-top: 10px;">
<button type="button" id="resetBtn3" style="margin-right: 10px;">Reset</button>
<input type="checkbox" id="spinBox3"> Spin On/Off
</div>
<br>
<h2>Fluid Bilayer</h2>
<p>
Or, the bilayer can exist in a more disordered fluid state, as shown here.
The fluid state is more representative of the state of the phospholipids in
a natural membrane.
</p>
<div id="jsmolWindow4"></div>
<div style="text-align: center; margin-top: 10px;">
<button type="button" id="resetBtn4" style="margin-right: 10px;">Reset</button>
<input type="checkbox" id="spinBox4"> Spin On/Off
</div>