
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
	<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head><card id="MainCard" title="&#x6B22;&#x8FCE;&#x5149;&#x4E34;"><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a><br/>&nbsp;</p><p><b>&#x6807;&#x9898;&#x3A;</b> &#x60F0;&#x6027;&#x51FD;&#x6570;&#x5B9A;&#x4E49;&#x6A21;&#x5F0F;</p><p><b>&#x4F5C;&#x8005;&#x3A;</b> &#x64;&#x6E;&#x61;&#x77;&#x6F;</p><p><b>&#x65E5;&#x671F;&#x3A;</b> &#x32;&#x30;&#x30;&#x37;&#x2D;&#x30;&#x38;&#x2D;&#x32;&#x38;&#x20;&#x30;&#x31;&#x3A;&#x33;&#x39;&#x20;&#x50;&#x4D;</p><p><b>&#x5206;&#x7C7B;&#x3A;</b> <a href="wap.asp?do=showLog&amp;cateID=4">&#x811A;&#x672C;&#x8BED;&#x8A00;</a></p><p><b>&#x5185;&#x5BB9;&#x3A;</b> &#x8FD9;&#x7BC7;&#x6587;&#x7AE0;&#x9610;&#x8FF0;&#x7684;&#x662F;&#x4E00;&#x79CD;&#x51FD;&#x6570;&#x5F0F;&#x7F16;&#x7A0B;&#xFF08;functional-programming&#xFF09;&#x8BBE;&#x8BA1;&#x6A21;&#x5F0F;&#xFF0C;&#x6211;&#x79F0;&#x4E4B;&#x4E3A;&#x60F0;&#x6027;&#x51FD;&#x6570;&#x5B9A;&#x4E49;&#xFF08;Lazy Function Definition&#xFF09;&#x3002;&#x6211;&#x4E0D;&#x6B62;&#x4E00;&#x6B21;&#x53D1;&#x73B0;&#x8FD9;&#x79CD;&#x6A21;&#x5F0F;&#x5728;JavaScript&#x4E2D;&#x5927;&#x6709;&#x7528;&#x5904;&#xFF0C;&#x5C24;&#x5176;&#x662F;&#x7F16;&#x5199;&#x8DE8;&#x6D4F;&#x89C8;&#x5668;&#x7684;&#x3001;&#x9AD8;&#x6548;&#x8FD0;&#x884C;&#x7684;&#x5E93;&#x4E4B;&#x65F6;&#x3002;<br/>&#x70ED;&#x8EAB;&#x95EE;&#x9898;<br/>&#x7F16;&#x5199;&#x4E00;&#x4E2A;&#x51FD;&#x6570;foo&#xFF0C;&#x5B83;&#x8FD4;&#x56DE;&#x7684;&#x662F;Date&#x5BF9;&#x8C61;&#xFF0C;&#x8FD9;&#x4E2A;&#x5BF9;&#x8C61;&#x4FDD;&#x5B58;&#x7684;&#x662F;foo&#x9996;&#x6B21;&#x8C03;&#x7528;&#x7684;&#x65F6;&#x95F4;&#x3002;<br/>&#x65B9;&#x6CD5;&#x4E00;&#xFF1A;&#x4E0A;&#x53E4;&#x65F6;&#x4EE3;&#x7684;&#x6280;&#x672F;<br/>&#x8FD9;&#x4E2A;&#x6700;&#x7B80;&#x964B;&#x7684;&#x89E3;&#x51B3;&#x65B9;&#x6848;&#x4F7F;&#x7528;&#x4E86;&#x5168;&#x5C40;&#x53D8;&#x91CF;t&#x6765;&#x4FDD;&#x5B58;Date&#x5BF9;&#x8C61;&#x3002;foo&#x9996;&#x6B21;&#x8C03;&#x7528;&#x65F6;&#x4F1A;&#x628A;&#x65F6;&#x95F4;&#x4FDD;&#x5B58;&#x5230;t&#x4E2D;&#x3002;&#x63A5;&#x4E0B;&#x6765;&#x7684;&#x518D;&#x6B21;&#x8C03;&#x7528;&#xFF0C;foo&#x53EA;&#x4F1A;&#x8FD4;&#x56DE;&#x4FDD;&#x5B58;&#x5728;t&#x4E2D;&#x7684;&#x503C;&#x3002;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;var t;<br/>function foo() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;if (t) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return t;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;t = new Date();<br/>&nbsp;&nbsp;&nbsp;&nbsp;return t;<br/>}<br/>&#x4F46;&#x662F;&#x8FD9;&#x6837;&#x7684;&#x4EE3;&#x7801;&#x6709;&#x4E24;&#x4E2A;&#x95EE;&#x9898;&#x3002;&#x7B2C;&#x4E00;&#xFF0C;&#x53D8;&#x91CF;t&#x662F;&#x4E00;&#x4E2A;&#x591A;&#x4F59;&#x7684;&#x5168;&#x5C40;&#x53D8;&#x91CF;&#xFF0C;&#x5E76;&#x4E14;&#x5728; foo&#x8C03;&#x7528;&#x7684;&#x95F4;&#x9694;&#x671F;&#x95F4;&#x6709;&#x53EF;&#x80FD;&#x88AB;&#x66F4;&#x6539;&#x3002;&#x7B2C;&#x4E8C;&#xFF0C;&#x5728;&#x8C03;&#x7528;&#x65F6;&#x8FD9;&#x4E9B;&#x4EE3;&#x7801;&#x7684;&#x6548;&#x7387;&#x5E76;&#x6CA1;&#x6709;&#x5F97;&#x5230;&#x4F18;&#x5316;&#x56E0;&#x4E3A;&#x6BCF;&#x6B21;&#x8C03;&#x7528; foo&#x90FD;&#x5FC5;&#x987B;&#x53BB;&#x6C42;&#x503C;&#x6761;&#x4EF6;&#x3002;&#x867D;&#x7136;&#x5728;&#x8FD9;&#x4E2A;&#x4F8B;&#x5B50;&#x4E2D;&#xFF0C;&#x6C42;&#x503C;&#x6761;&#x4EF6;&#x5E76;&#x4E0D;&#x663E;&#x5F97;&#x4F4E;&#x6548;&#xFF0C;&#x4F46;&#x5728;&#x73B0;&#x5B9E;&#x4E16;&#x754C;&#x7684;&#x5B9E;&#x8DF5;&#x4F8B;&#x5B50;&#x4E2D;&#x5E38;&#x5E38;&#x4F1A;&#x6709;&#x6781;&#x4E3A;&#x6602;&#x8D35;&#x7684;&#x6761;&#x4EF6;&#x6C42;&#x503C;&#xFF0C;&#x6BD4;&#x5982;&#x5728;if-else-else-&#x2026;&#x7684;&#x7ED3;&#x6784;&#x4E2D;&#x3002;<br/>&#x65B9;&#x6CD5;&#x4E8C;&#xFF1A;&#x6A21;&#x5757;&#x6A21;&#x5F0F;<br/>&#x6211;&#x4EEC;&#x53EF;&#x4EE5;&#x901A;&#x8FC7;&#x88AB;&#x8BA4;&#x4E3A;&#x5F52;&#x529F;&#x4E8E;Cornford &#x548C; Crockford &#x7684;&#x6A21;&#x5757;&#x6A21;&#x5F0F;&#x6765;&#x5F25;&#x8865;&#x7B2C;&#x4E00;&#x79CD;&#x65B9;&#x6CD5;&#x7684;&#x7F3A;&#x9677;&#x3002;&#x4F7F;&#x7528;&#x95ED;&#x5305;&#x53EF;&#x4EE5;&#x9690;&#x85CF;&#x5168;&#x5C40;&#x53D8;&#x91CF;t&#xFF0C;&#x53EA;&#x6709;&#x5728; foo&#x5185;&#x7684;&#x4EE3;&#x7801;&#x624D;&#x53EF;&#x4EE5;&#x8BBF;&#x95EE;&#x5B83;&#x3002;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;var foo = (function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;var t;<br/>&nbsp;&nbsp;&nbsp;&nbsp;return function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (t) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return t;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t = new Date();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return t;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>})();<br/>&#x4F46;&#x8FD9;&#x4ECD;&#x7136;&#x6CA1;&#x6709;&#x4F18;&#x5316;&#x8C03;&#x7528;&#x65F6;&#x7684;&#x6548;&#x7387;&#xFF0C;&#x56E0;&#x4E3A;&#x6BCF;&#x6B21;&#x8C03;&#x7528;foo&#x4F9D;&#x7136;&#x9700;&#x8981;&#x6C42;&#x503C;&#x6761;&#x4EF6;&#x3002;<br/>&#x867D;&#x7136;&#x6A21;&#x5757;&#x6A21;&#x5F0F;&#x662F;&#x4E00;&#x4E2A;&#x5F3A;&#x5927;&#x7684;&#x5DE5;&#x5177;&#xFF0C;&#x4F46;&#x6211;&#x575A;&#x4FE1;&#x5728;&#x8FD9;&#x79CD;&#x60C5;&#x5F62;&#x4E0B;&#x5B83;&#x7528;&#x9519;&#x4E86;&#x5730;&#x65B9;&#x3002;<br/>&#x65B9;&#x6CD5;&#x4E09;&#xFF1A;&#x51FD;&#x6570;&#x4F5C;&#x4E3A;&#x5BF9;&#x8C61;<br/>&#x7531;&#x4E8E;JavaScript&#x7684;&#x51FD;&#x6570;&#x4E5F;&#x662F;&#x5BF9;&#x8C61;&#xFF0C;&#x6240;&#x4EE5;&#x5B83;&#x53EF;&#x4EE5;&#x5E26;&#x6709;&#x5C5E;&#x6027;&#xFF0C;&#x6211;&#x4EEC;&#x53EF;&#x4EE5;&#x636E;&#x6B64;&#x5B9E;&#x73B0;&#x4E00;&#x79CD;&#x8DDF;&#x6A21;&#x5757;&#x6A21;&#x5F0F;&#x8D28;&#x91CF;&#x5DEE;&#x4E0D;&#x591A;&#x7684;&#x89E3;&#x51B3;&#x65B9;&#x6848;&#x3002;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;function foo() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;if (foo.t) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return foo.t;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;foo.t = new Date();<br/>&nbsp;&nbsp;&nbsp;&nbsp;return foo.t;<br/>}<br/>&#x5728;&#x4E00;&#x4E9B;&#x60C5;&#x5F62;&#x4E2D;&#xFF0C;&#x5E26;&#x6709;&#x5C5E;&#x6027;&#x7684;&#x51FD;&#x6570;&#x5BF9;&#x8C61;&#x53EF;&#x4EE5;&#x4EA7;&#x751F;&#x6BD4;&#x8F83;&#x6E05;&#x6670;&#x7684;&#x89E3;&#x51B3;&#x65B9;&#x6848;&#x3002;&#x6211;&#x8BA4;&#x4E3A;&#xFF0C;&#x8FD9;&#x4E2A;&#x65B9;&#x6CD5;&#x5728;&#x7406;&#x5FF5;&#x4E0A;&#x8981;&#x6BD4;&#x6A21;&#x5F0F;&#x6A21;&#x5757;&#x65B9;&#x6CD5;&#x66F4;&#x4E3A;&#x7B80;&#x5355;&#x3002;<br/>&#x8FD9;&#x4E2A;&#x89E3;&#x51B3;&#x65B9;&#x6848;&#x907F;&#x514D;&#x4E86;&#x7B2C;&#x4E00;&#x79CD;&#x65B9;&#x6CD5;&#x4E2D;&#x7684;&#x5168;&#x5C40;&#x53D8;&#x91CF;t&#xFF0C;&#x4F46;&#x4ECD;&#x7136;&#x89E3;&#x51B3;&#x4E0D;&#x4E86;foo&#x6BCF;&#x6B21;&#x8C03;&#x7528;&#x6240;&#x5E26;&#x6765;&#x7684;&#x6761;&#x4EF6;&#x6C42;&#x503C;&#x3002;<br/>&#x65B9;&#x6CD5;&#x56DB;&#xFF1A;&#x60F0;&#x6027;&#x51FD;&#x6570;&#x5B9A;&#x4E49;<br/>&#x73B0;&#x5728;&#xFF0C;&#x8FD9;&#x662F;&#x4F60;&#x9605;&#x8BFB;&#x8FD9;&#x7BC7;&#x6587;&#x7AE0;&#x7684;&#x7406;&#x7531;&#xFF1A;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;var foo = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;var t = new Date();<br/>&nbsp;&nbsp;&nbsp;&nbsp;foo = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return t;<br/>&nbsp;&nbsp;&nbsp;&nbsp;};<br/>&nbsp;&nbsp;&nbsp;&nbsp;return foo();<br/>};<br/>&#x5F53;foo&#x9996;&#x6B21;&#x8C03;&#x7528;&#xFF0C;&#x6211;&#x4EEC;&#x5B9E;&#x4F8B;&#x5316;&#x4E00;&#x4E2A;&#x65B0;&#x7684;Date&#x5BF9;&#x8C61;&#x5E76;&#x91CD;&#x7F6E; foo&#x5230;&#x4E00;&#x4E2A;&#x65B0;&#x7684;&#x51FD;&#x6570;&#x4E0A;&#xFF0C;&#x5B83;&#x5728;&#x5176;&#x95ED;&#x5305;&#x5185;&#x5305;&#x542B;Date&#x5BF9;&#x8C61;&#x3002;&#x5728;&#x9996;&#x6B21;&#x8C03;&#x7528;&#x7ED3;&#x675F;&#x4E4B;&#x524D;&#xFF0C;foo&#x7684;&#x65B0;&#x51FD;&#x6570;&#x503C;&#x4E5F;&#x5DF2;&#x8C03;&#x7528;&#x5E76;&#x63D0;&#x4F9B;&#x8FD4;&#x56DE;&#x503C;&#x3002;<br/>&#x63A5;&#x4E0B;&#x6765;&#x7684;foo&#x8C03;&#x7528;&#x90FD;&#x53EA;&#x4F1A;&#x7B80;&#x5355;&#x5730;&#x8FD4;&#x56DE;t&#x4FDD;&#x7559;&#x5728;&#x5176;&#x95ED;&#x5305;&#x5185;&#x7684;&#x503C;&#x3002;&#x8FD9;&#x662F;&#x975E;&#x5E38;&#x5FEB;&#x7684;&#x67E5;&#x627E;&#xFF0C;&#x5C24;&#x5176;&#x662F;&#xFF0C;&#x5982;&#x679C;&#x4E4B;&#x524D;&#x90A3;&#x4E9B;&#x4F8B;&#x5B50;&#x7684;&#x6761;&#x4EF6;&#x975E;&#x5E38;&#x591A;&#x548C;&#x590D;&#x6742;&#x7684;&#x8BDD;&#xFF0C;&#x5C31;&#x4F1A;&#x663E;&#x5F97;&#x5F88;&#x9AD8;&#x6548;&#x3002;<br/>&#x5F04;&#x6E05;&#x8FD9;&#x79CD;&#x6A21;&#x5F0F;&#x7684;&#x53E6;&#x4E00;&#x79CD;&#x9014;&#x5F84;&#x662F;&#xFF0C;&#x5916;&#x56F4;&#xFF08;outer&#xFF09;&#x51FD;&#x6570;&#x5BF9;foo&#x7684;&#x9996;&#x6B21;&#x8C03;&#x7528;&#x662F;&#x4E00;&#x4E2A;&#x4FDD;&#x8BC1;&#xFF08;promise&#xFF09;&#x3002;&#x5B83;&#x4FDD;&#x8BC1;&#x4E86;&#x9996;&#x6B21;&#x8C03;&#x7528;&#x4F1A;&#x91CD;&#x5B9A;&#x4E49;foo&#x4E3A;&#x4E00;&#x4E2A;&#x975E;&#x5E38;&#x6709;&#x7528;&#x7684;&#x51FD;&#x6570;&#x3002;&#x7B3C;&#x7EDF;&#x5730;&#x8BF4;&#xFF0C;&#x672F;&#x8BED;&#x201C;&#x4FDD;&#x8BC1;&#x201D; &#x6765;&#x81EA;&#x4E8E;Scheme&#x7684;&#x60F0;&#x6027;&#x6C42;&#x503C;&#x673A;&#x5236;&#xFF08;lazy evaluation mechanism&#xFF09;&#x3002;&#x6BCF;&#x4E00;&#x4F4D;JavaScript&#x7A0B;&#x5E8F;&#x5458;&#x771F;&#x7684;&#x90FD;&#x5E94;&#x8BE5;&#x5B66;&#x4E60;Scheme &#xFF0C;&#x56E0;&#x4E3A;&#x5B83;&#x6709;&#x5F88;&#x591A;&#x51FD;&#x6570;&#x5F0F;&#x7F16;&#x7A0B;&#x76F8;&#x5173;&#x7684;&#x4E1C;&#x897F;&#xFF0C;&#x800C;&#x8FD9;&#x4E9B;&#x4E1C;&#x897F;&#x4F1A;&#x51FA;&#x73B0;&#x5728;JavaScript&#x4E2D;&#x3002;<br/>&#x786E;&#x5B9A;&#x9875;&#x9762;&#x6EDA;&#x52A8;&#x8DDD;&#x79BB;<br/>&#x7F16;&#x5199;&#x8DE8;&#x6D4F;&#x89C8;&#x5668;&#x7684;JavaScript, &#x7ECF;&#x5E38;&#x4F1A;&#x628A;&#x4E0D;&#x540C;&#x7684;&#x6D4F;&#x89C8;&#x5668;&#x7279;&#x5B9A;&#x7684;&#x7B97;&#x6CD5;&#x5305;&#x88F9;&#x5728;&#x4E00;&#x4E2A;&#x72EC;&#x7ACB;&#x7684;JavaScript&#x51FD;&#x6570;&#x4E2D;&#x3002;&#x8FD9;&#x5C31;&#x53EF;&#x4EE5;&#x901A;&#x8FC7;&#x9690;&#x85CF;&#x6D4F;&#x89C8;&#x5668;&#x5DEE;&#x5F02;&#x6765;&#x6807;&#x51C6;&#x5316;&#x6D4F;&#x89C8;&#x5668;API&#xFF0C;&#x5E76;&#x8BA9;&#x6784;&#x5EFA;&#x548C;&#x7EF4;&#x62A4;&#x590D;&#x6742;&#x7684;&#x9875;&#x9762;&#x7279;&#x6027;&#x7684;JavaScript&#x66F4;&#x5BB9;&#x6613;&#x3002;&#x5F53;&#x5305;&#x88F9;&#x51FD;&#x6570;&#x88AB;&#x8C03;&#x7528;&#xFF0C;&#x5C31;&#x4F1A;&#x6267;&#x884C;&#x6070;&#x5F53;&#x7684;&#x6D4F;&#x89C8;&#x5668;&#x7279;&#x5B9A;&#x7684;&#x7B97;&#x6CD5;&#x3002;<br/>&#x5728;&#x62D6;&#x653E;&#x5E93;&#x4E2D;&#xFF0C;&#x7ECF;&#x5E38;&#x9700;&#x8981;&#x4F7F;&#x7528;&#x7531;&#x9F20;&#x6807;&#x4E8B;&#x4EF6;&#x63D0;&#x4F9B;&#x7684;&#x5149;&#x6807;&#x4F4D;&#x7F6E;&#x4FE1;&#x606F;&#x3002;&#x9F20;&#x6807;&#x4E8B;&#x4EF6;&#x7ED9;&#x4E88;&#x7684;&#x5149;&#x6807;&#x5750;&#x6807;&#x76F8;&#x5BF9;&#x4E8E;&#x6D4F;&#x89C8;&#x5668;&#x7A97;&#x53E3;&#x800C;&#x4E0D;&#x662F;&#x9875;&#x9762;&#x3002;&#x52A0;&#x4E0A;&#x9875;&#x9762;&#x6EDA;&#x52A8;&#x8DDD;&#x79BB;&#x9F20;&#x6807;&#x7684;&#x7A97;&#x53E3;&#x5750;&#x6807;&#x7684;&#x8DDD;&#x79BB;&#x5373;&#x53EF;&#x5F97;&#x5230;&#x9F20;&#x6807;&#x76F8;&#x5BF9;&#x4E8E;&#x9875;&#x9762;&#x7684;&#x5750;&#x6807;&#x3002;&#x6240;&#x4EE5;&#x6211;&#x4EEC;&#x9700;&#x8981;&#x4E00;&#x4E2A;&#x53CD;&#x9988;&#x9875;&#x9762;&#x6EDA;&#x52A8;&#x7684;&#x51FD;&#x6570;&#x3002;&#x6F14;&#x793A;&#x8D77;&#x89C1;&#xFF0C;&#x8FD9;&#x4E2A;&#x4F8B;&#x5B50;&#x5B9A;&#x4E49;&#x4E86;&#x4E00;&#x4E2A;&#x51FD;&#x6570;getScrollY&#x3002;&#x56E0;&#x4E3A;&#x62D6;&#x653E;&#x5E93;&#x5728;&#x62D6;&#x62FD;&#x671F;&#x95F4;&#x4F1A;&#x6301;&#x7EED;&#x8FD0;&#x884C;&#xFF0C;&#x6211;&#x4EEC;&#x7684;getScrollY&#x5FC5;&#x987B;&#x5C3D;&#x53EF;&#x80FD;&#x9AD8;&#x6548;&#x3002;<br/>&#x4E0D;&#x8FC7;&#x5374;&#x6709;&#x56DB;&#x79CD;&#x4E0D;&#x540C;&#x7684;&#x6D4F;&#x89C8;&#x5668;&#x7279;&#x5B9A;&#x7684;&#x9875;&#x9762;&#x6EDA;&#x52A8;&#x53CD;&#x9988;&#x7B97;&#x6CD5;&#x3002;Richard Cornford&#x5728;&#x4ED6;&#x7684;feature detection article &#x6587;&#x7AE0;&#x4E2D;&#x63D0;&#x5230;&#x8FD9;&#x4E9B;&#x7B97;&#x6CD5;&#x3002;&#x6700;&#x5927;&#x7684;&#x9677;&#x9631;&#x5728;&#x4E8E;&#x8FD9;&#x56DB;&#x79CD;&#x9875;&#x9762;&#x6EDA;&#x52A8;&#x53CD;&#x9988;&#x7B97;&#x6CD5;&#x5176;&#x4E2D;&#x4E4B;&#x4E00;&#x4F7F;&#x7528;&#x4E86; document.body. JavaScript&#x5E93;&#x901A;&#x5E38;&#x4F1A;&#x5728;HTML&#x6587;&#x6863;&#x7684;&lt;head&gt;&#x52A0;&#x8F7D;&#xFF0C;&#x4E0E;&#x6B64;&#x540C;&#x65F6;docment.body&#x5E76;&#x4E0D;&#x5B58;&#x5728;&#x3002;&#x6240;&#x4EE5;&#x5728;&#x5E93;&#x8F7D;&#x5165;&#x7684;&#x65F6;&#x5019;&#xFF0C;&#x6211;&#x4EEC;&#x5E76;&#x4E0D;&#x80FD;&#x4F7F;&#x7528;&#x7279;&#x6027;&#x68C0;&#x67E5;&#xFF08;feature detection&#xFF09;&#x6765;&#x786E;&#x5B9A;&#x4F7F;&#x7528;&#x54EA;&#x79CD;&#x7B97;&#x6CD5;&#x3002;<br/>&#x8003;&#x8651;&#x5230;&#x8FD9;&#x4E9B;&#x95EE;&#x9898;&#xFF0C;&#x5927;&#x90E8;&#x5206;JavaScript&#x5E93;&#x4F1A;&#x9009;&#x62E9;&#x4EE5;&#x4E0B;&#x4E24;&#x79CD;&#x65B9;&#x6CD5;&#x4E2D;&#x7684;&#x4E00;&#x79CD;&#x3002;&#x7B2C;&#x4E00;&#x4E2A;&#x9009;&#x62E9;&#x662F;&#x4F7F;&#x7528;&#x6D4F;&#x89C8;&#x5668;&#x55C5;&#x63A2;navigator.userAgent&#xFF0C;&#x4E3A;&#x8BE5;&#x6D4F;&#x89C8;&#x5668;&#x521B;&#x5EFA;&#x9AD8;&#x6548;&#x3001;&#x7B80;&#x6D01;&#x7684;getScrollY. &#x7B2C;&#x4E8C;&#x4E2A;&#x66F4;&#x597D;&#x4E9B;&#x7684;&#x9009;&#x62E9;&#x662F;getScrollY&#x5728;&#x6BCF;&#x4E00;&#x6B21;&#x8C03;&#x7528;&#x65F6;&#x90FD;&#x4F7F;&#x7528;&#x7279;&#x6027;&#x68C0;&#x67E5;&#x6765;&#x51B3;&#x5B9A;&#x5408;&#x9002;&#x7684;&#x7B97;&#x6CD5;&#x3002;&#x4F46;&#x662F;&#x7B2C;&#x4E8C;&#x4E2A;&#x9009;&#x62E9;&#x5E76;&#x4E0D;&#x9AD8;&#x6548;&#x3002;<br/>&#x597D;&#x6D88;&#x606F;&#x662F;&#x62D6;&#x653E;&#x5E93;&#x4E2D;&#x7684;getScrollY&#x53EA;&#x4F1A;&#x5728;&#x7528;&#x6237;&#x4E0E;&#x9875;&#x9762;&#x7684;&#x5143;&#x7D20;&#x4EA4;&#x4E92;&#x65F6;&#x624D;&#x4F1A;&#x7528;&#x5230;&#x3002;&#x5982;&#x679C;&#x5143;&#x7D20;&#x4E1A;&#x5DF2;&#x51FA;&#x73B0;&#x5728;&#x9875;&#x9762;&#x4E2D;&#xFF0C;&#x90A3;&#x4E48;document.body&#x4E5F;&#x4F1A;&#x540C;&#x65F6;&#x5B58;&#x5728;&#x3002;getScrollY&#x7684;&#x9996;&#x6B21;&#x8C03;&#x7528;&#xFF0C;&#x6211;&#x4EEC;&#x53EF;&#x4EE5;&#x4F7F;&#x7528;&#x60F0;&#x6027;&#x51FD;&#x6570;&#x5B9A;&#x4E49;&#x6A21;&#x5F0F;&#x7ED3;&#x5408;&#x7279;&#x6027;&#x68C0;&#x67E5;&#x6765;&#x521B;&#x5EFA;&#x9AD8;&#x6548;&#x7684;getScrollY.<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;var getScrollY = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;if (typeof window.pageYOffset == &#39;number&#39;) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getScrollY = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return window.pageYOffset;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br/>&nbsp;&nbsp;&nbsp;&nbsp;} else if ((typeof document.compatMode == &#39;string&#39;) &amp;&amp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (document.compatMode.indexOf(&#39;CSS&#39;) &gt;= 0) &amp;&amp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (document.documentElement) &amp;&amp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (typeof document.documentElement.scrollTop == &#39;number&#39;)) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getScrollY = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return document.documentElement.scrollTop;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br/>&nbsp;&nbsp;&nbsp;&nbsp;} else if ((document.body) &amp;&amp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (typeof document.body.scrollTop == &#39;number&#39;)) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getScrollY = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return document.body.scrollTop;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;} else {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getScrollY = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return NaN;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;return getScrollY();<br/>}<br/>&#x603B;&#x7ED3;<br/>&#x60F0;&#x6027;&#x51FD;&#x6570;&#x5B9A;&#x4E49;&#x6A21;&#x5F0F;&#x8BA9;&#x6211;&#x53EF;&#x4EE5;&#x7F16;&#x5199;&#x4E00;&#x4E9B;&#x7D27;&#x51D1;&#x3001;&#x5065;&#x58EE;&#x3001;&#x9AD8;&#x6548;&#x7684;&#x4EE3;&#x7801;&#x3002;&#x7528;&#x5230;&#x8FD9;&#x4E2A;&#x6A21;&#x5F0F;&#x7684;&#x6BCF;&#x4E00;&#x6B21;&#xFF0C;&#x6211;&#x90FD;&#x4F1A;&#x62BD;&#x7A7A;&#x8D5E;&#x53F9;JavaScript&#x7684;&#x51FD;&#x6570;&#x5F0F;&#x7F16;&#x7A0B;&#x80FD;&#x529B;&#x3002;<br/>JavaScript&#x540C;&#x65F6;&#x652F;&#x6301;&#x51FD;&#x6570;&#x5F0F;&#x548C;&#x9762;&#x5411;&#x5BF9;&#x8C61;&#x4FBF;&#x7A0B;&#x3002;&#x5E02;&#x9762;&#x4E0A;&#x6709;&#x5F88;&#x591A;&#x91CD;&#x70B9;&#x7740;&#x58A8;&#x4E8E;&#x9762;&#x5411;&#x5BF9;&#x8C61;&#x8BBE;&#x8BA1;&#x6A21;&#x5F0F;&#x7684;&#x4E66;&#x90FD;&#x53EF;&#x4EE5;&#x5E94;&#x7528;&#x5230;JavaScript&#x7F16;&#x7A0B;&#x4E2D;&#x3002;&#x4E0D;&#x8FC7;&#x5374;&#x6CA1;&#x6709;&#x591A;&#x5C11;&#x4E66;&#x6D89;&#x53CA;&#x51FD;&#x6570;&#x5F0F;&#x8BBE;&#x8BA1;&#x6A21;&#x5F0F;&#x7684;&#x4F8B;&#x5B50;&#x3002;&#x5BF9;&#x4E8E;JavaScript&#x793E;&#x533A;&#x6765;&#x8BF4;&#xFF0C;&#x8FD8;&#x9700;&#x8981;&#x5F88;&#x957F;&#x65F6;&#x95F4;&#x6765;&#x79EF;&#x7D2F;&#x826F;&#x597D;&#x7684;&#x51FD;&#x6570;&#x5F0F;&#x6A21;&#x5F0F;&#x3002;<br/>&#x66F4;&#x65B0;&#xFF1A;<br/>&#x8FD9;&#x4E2A;&#x6A21;&#x5F0F;&#x867D;&#x7136;&#x6709;&#x8DA3;&#xFF0C;&#x4F46;&#x7531;&#x4E8E;&#x5927;&#x91CF;&#x4F7F;&#x7528;&#x95ED;&#x5305;&#xFF0C;&#x53EF;&#x80FD;&#x4F1A;&#x7531;&#x4E8E;&#x5185;&#x5B58;&#x7BA1;&#x7406;&#x7684;&#x4E0D;&#x5584;&#x800C;&#x5BFC;&#x81F4;&#x6027;&#x80FD;&#x95EE;&#x9898;&#x3002;&#x6765;&#x81EA; FCKeditor &#x7684;FredCK&#x6539;&#x8FDB;&#x4E86;getScrollY&#xFF0C;&#x65E2;&#x4F7F;&#x7528;&#x4E86;&#x8FD9;&#x79CD;&#x6A21;&#x5F0F;&#xFF0C;&#x4E5F;&#x907F;&#x514D;&#x4E86;&#x95ED;&#x5305;&#xFF1A;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;var getScrollY = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;if (typeof window.pageYOffset == &#39;number&#39;)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return (getScrollY = getScrollY.case1)();<br/>&nbsp;&nbsp;&nbsp;&nbsp;var compatMode = document.compatMode;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var documentElement = document.documentElement;<br/>&nbsp;&nbsp;&nbsp;&nbsp;if ((typeof compatMode == &#39;string&#39;) &amp;&amp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (compatMode.indexOf(&#39;CSS&#39;) &gt;= 0) &amp;&amp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (documentElement) &amp;&amp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (typeof documentElement.scrollTop == &#39;number&#39;))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return (getScrollY = getScrollY.case2)();<br/>&nbsp;&nbsp;&nbsp;&nbsp;var body = document.body ;<br/>&nbsp;&nbsp;&nbsp;&nbsp;if ((body) &amp;&amp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (typeof body.scrollTop == &#39;number&#39;))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return (getScrollY = getScrollY.case3)();<br/>&nbsp;&nbsp;&nbsp;&nbsp;return (getScrollY = getScrollY.case4)();<br/>};<br/>getScrollY.case1 = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;return window.pageYOffset;<br/>};<br/>getScrollY.case2 = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;return documentElement.scrollTop;<br/>};<br/>getScrollY.case3 = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;return body.scrollTop;<br/>};<br/>getScrollY.case4 = function() {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return NaN;<br/>};<br/>&#x539F;&#x6587;&#xFF1A;Lazy Function Definition Pattern.</p><p> + <a href="#CommentCard">&#x67E5;&#x770B;&#x5F53;&#x524D;&#x65E5;&#x5FD7;&#x8BC4;&#x8BBA;</a> (0)</p><p>&nbsp;<br/><br/><a href="wap.asp?do=Login">&#x767B;&#x5F55;</a></p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.063&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card><card id="postCommentCard"><p><b>&#x6807;&#x9898;&#x3A;</b> <a href="#MainCard">&#x60F0;&#x6027;&#x51FD;&#x6570;&#x5B9A;&#x4E49;&#x6A21;&#x5F0F;</a></p><p><br/>你没有权限发表评论</p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.063&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card><card id="CommentCard"><p>&#x6682;&#x65E0;&#x8BC4;&#x8BBA;</p><p><a href="#MainCard">&#x8FD4;&#x56DE;</a></p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.063&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card>
</wml>
