话不多说,直接上demo,你可以点击下面的图片看效果。

插件代码
<code>(</code><code>function</code><code>(){</code>
<code> </code><code>var</code> <code>fullScreenApi = {</code>
<code> </code><code>supportsFullScreen:</code><code>false</code><code>,</code>
<code> </code><code>isFullScreen:</code><code>function</code><code>() {</code><code>return</code> <code>false</code><code>; },</code>
<code> </code><code>requestFullScreen:</code><code>function</code><code>() {},</code>
<code> </code><code>cancelFullScreen:</code><code>function</code><code>() {},</code>
<code> </code><code>fullScreenEventName:</code><code>''</code><code>,</code>
<code> </code><code>prefix:</code><code>''</code>
<code> </code><code>},</code>
<code> </code><code>browserPrefixes =</code><code>'webkit moz o ms khtml'</code><code>.split(</code><code>' '</code><code>);</code>
<code> </code><code>// check for native support</code>
<code> </code><code>if</code> <code>(</code><code>typeof</code> <code>document.cancelFullScreen !=</code><code>'undefined'</code><code>) {</code>
<code> </code><code>fullScreenApi.supportsFullScreen =</code><code>true</code><code>;</code>
<code> </code><code>}</code><code>else</code> <code>{</code>
<code> </code><code>// check for fullscreen support by vendor prefix</code>
<code> </code><code>for</code> <code>(</code><code>var</code> <code>i = 0, il = browserPrefixes.length; i < il; i++ ) {</code>
<code> </code><code>fullScreenApi.prefix = browserPrefixes[i];</code>
<code> </code><code>if</code> <code>(</code><code>typeof</code> <code>document[fullScreenApi.prefix +</code><code>'CancelFullScreen'</code> <code>] !=</code><code>'undefined'</code> <code>) {</code>
<code> </code><code>fullScreenApi.supportsFullScreen =</code><code>true</code><code>;</code>
<code> </code><code>break</code><code>;</code>
<code> </code><code>}</code>
<code> </code><code>}</code>
<code> </code><code>}</code>
<code> </code><code>// update methods to do something useful</code>
<code> </code><code>if</code> <code>(fullScreenApi.supportsFullScreen) {</code>
<code> </code><code>fullScreenApi.fullScreenEventName = fullScreenApi.prefix +</code><code>'fullscreenchange'</code><code>;</code>
<code> </code><code>fullScreenApi.isFullScreen =</code><code>function</code><code>() {</code>
<code> </code><code>switch</code> <code>(</code><code>this</code><code>.prefix) {</code>
<code> </code><code>case</code> <code>''</code><code>:</code>
<code> </code><code>return</code> <code>document.fullScreen;</code>
<code> </code><code>case</code> <code>'webkit'</code><code>:</code>
<code> </code><code>return</code> <code>document.webkitIsFullScreen;</code>
<code> </code><code>default</code><code>:</code>
<code> </code><code>return</code> <code>document[</code><code>this</code><code>.prefix +</code><code>'FullScreen'</code><code>];</code>
<code> </code><code>fullScreenApi.requestFullScreen =</code><code>function</code><code>(el) {</code>
<code> </code><code>return</code> <code>(</code><code>this</code><code>.prefix ===</code><code>''</code><code>) ? el.requestFullScreen() : el[</code><code>this</code><code>.prefix +</code><code>'RequestFullScreen'</code><code>]();</code>
<code> </code><code>fullScreenApi.cancelFullScreen =</code><code>function</code><code>(el) {</code>
<code> </code><code>return</code> <code>(</code><code>this</code><code>.prefix ===</code><code>''</code><code>) ? document.cancelFullScreen() : document[</code><code>this</code><code>.prefix +</code><code>'CancelFullScreen'</code><code>]();</code>
<code> </code><code>// jQuery plugin</code>
<code> </code><code>if</code> <code>(</code><code>typeof</code> <code>jQuery !=</code><code>'undefined'</code><code>) {</code>
<code> </code><code>jQuery.fn.requestFullScreen =</code><code>function</code><code>() {</code>
<code> </code><code>return</code> <code>this</code><code>.each(</code><code>function</code><code>() {</code>
<code> </code><code>if</code> <code>(fullScreenApi.supportsFullScreen) {</code>
<code> </code><code>fullScreenApi.requestFullScreen(</code><code>this</code><code>);</code>
<code> </code><code>}</code>
<code> </code><code>});</code>
<code> </code><code>};</code>
<code> </code><code>window.fullScreenApi = fullScreenApi;</code>
<code>})();</code>
调用代码
<code>$(</code><code>function</code><code>(){</code>
<code> </code><code>$(</code><code>'#fullscreenbtn'</code><code>).click(</code><code>function</code><code>(){</code>
<code> </code><code>if</code><code>(window.fullScreenApi.supportsFullScreen){</code>
<code> </code><code>window.fullScreenApi.requestFullScreen(document.getElementById(</code><code>'fullscreenbox'</code><code>));</code>
<code> </code><code>}</code><code>else</code><code>{</code>
<code> </code><code>alert(</code><code>'就你这浏览器,基本就告别全屏功能了'</code><code>);</code>
<code> </code><code>});</code>
<code>});</code>
HTML代码结构
<code><</code><code>a</code> <code>id="fullscreenbtn"></code>
<code> </code><code><</code><code>img</code> <code>id="fullscreenbox" style="display: block; margin-left: auto; margin-right: auto;" src="http://pic002.cnblogs.com/images/2012/277258/2012041400022949.gif" alt="" /></code>
<code></</code><code>a</code><code>></code>
基于fullscreen功能,我们就可以做出很多效果,比如相册:
又比如视频中的全屏功能:
本文转自胡尐睿丶博客园博客,原文链接:http://www.cnblogs.com/hooray/archive/2012/04/14/2446593.html,如需转载请自行联系原作者