html5实现不用swf播放器用video标签播放多mp4文件playlist的问题

webmm 2012-04-17 09:22:43
首先我要申明在无swf条件下,比如我做个页面里面内嵌video标签,但是需要播N个视频文件,而这个页面直接用iphne打开可以实现连续播放。

如果是用swf,基本上主流的flash播放都可以实现playlist,但是html5的<video>单纯实现就不知道要怎么弄了,我试着用以下代码

<script type="text/javascript">
var nextVideo = "video/video2.mp4";
var videoPlayer = document.getElementById('videoPlayer');
videoPlayer.onend = function(){
videoPlayer.src = nextVideo;
}
</script>
<video id="videoPlayer" src="video/video1.mp4" autoplay autobuffer controls />

但是在chrome下就没有更换,只是播放了video1.mp4这个文件就停止了,求助!
...全文
459 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
flashworker 2012-08-27
  • 打赏
  • 举报
回复
你的参数没有加上去。
cyx1234abc 2012-07-24
  • 打赏
  • 举报
回复
怎么解决??求解
小粉红爱学习 2012-06-27
  • 打赏
  • 举报
回复
我也没有解决 请问你解决了吗?
支持格式 视频: FLV, SWF, MPEG-4, 3GP 音频: MP3, AAC M4A. 支持播放列表、播放全屏、播放暂停 官方说明: A highly customizable and skin-able media player, which displays and plays collections of audio and/or video. Perfect for musicians, bands and anyone that needs to control the look and feel of their player to fit with their site design. Rave also offers custom playlist creation and editing, or you can manage what appears in the player by directing Rave to a folder full of media files on your site. Wimpy Rave v2.0.31 Jun. 25, 2012 - Corrected strict php warning reporting v2.0.30 Jun. 1, 2012 - Corrected scrubber issue for MP3 files without file size data (or servers that don't issue file size headers). v2.0.29 Apr. 30, 2012 - Changed fullscreen to true fullscreen. v2.0.28 Apr. 24, 2012 - Corrected issue with embedded reg code. - Retooled fullscreen and popout (internalized configs). v2.0.25 Apr. 3, 2012 - Corrected popup fullscreen issue for IE 9 and Chrome. - Adjusted resume to compensate for over under. - Updated swfobject within rave.js to v 2.2 v2.0.23a Jun. 7, 2011 - Updated getid3 library to v1.7.10 v2.0.23 Mar. 15, 2011 - Corrected issue with video resizing incorrectly for certain skins. v2.0.22 (Nov. 17, 2010) NOT RELEASED - Corrected unloader() prior to launching track, when multiple file kinds are mixed, potentially launch two streams. v2.0.21 (Nov. 9, 2010) - Corrected issue with scrolling display text. v2.0.19a (May 14, 2010) - Updated JS file for DOM element v2.0.19 (Feb. 1, 2010) - Fixed issue with "linkToWindow" for links in playlist. v2.0.18 (Jan. 27, 2010) - Corrected issue with fame EQ not working with M4A files v2.0.17 (Dec. 31, 2009) - Corrected issue with ampersands (& were converted to & ) in ecommerce URLs - Added feature: plugsBlockControls (undocumented) v2.0.16 (Nov. 24, 2009) - Corrected issue with extra playbar appearing randomly. - Corrected issue with playlist text not rendering the color correctly on in Firefox. v2.0.15 (Nov. 20, 2009) - Added m4v
任意拖动的视频播放 //====================================================== //===============VIDEO SETUP=====视频设置============ //====================================================== //the playlist address _root.playlist == undefined ? playlist="http://yun.365.sh/s/TY2gc2.swf" : playlist=_root.playlist; // stage variables Stage.showMenu = false; Stage.scaleMode = "noScale"; stop(); // video Stream variables var nc:NetConnection = new NetConnection(); nc.connect(null); var ns:NetStream = new NetStream(nc); // buffer video ns.setBufferTime(5); ns.onStatus = function(obj) { if (obj.code == "NetStream.Buffer.Full") { bufferClip._visible = false; } if(obj.code == "NetStream.Buffer.Empty") { bufferClip._visible = true; } }; var myVolume:Number = 0; var current_song:Number = 1; // control variables var scr = _root.main.controlBar.scrubber; var pr = scr.progres; var ld = scr.loader; var cb = _root.main.controlBar; var swidth = scr.back._width-37; //297-37 var pstart = -285; //-261 var dur:Number; // the percentage of the video loaded var lprog:Number = 0; var sign:String = "first"; main.theVideo.attachVideo(ns); // parsing the playlist xml files data_xml = new XML(); data_xml.ignoreWhite = true; data_xml.onLoad = loadData; data_xml.load(playlist); var aPath = new Array(); function loadData(success) { if (success) { // getting all titles and filenames songTitel = new Array(); audioTracks = new Array(); audioTracks.shuffle(); audioTracks = this.firstChild.childNodes; song_total = audioTracks.length; for (var i = 0; iplaylist buttons bot.listContentMc.playlist.btn.duplicateMovieClip("btn"+i, i); bot.listContentMc.playlist["btn"+i]._y = bot.listContentMc.playlist.btn._y+i*int(bot.listContentMc.playlist.btn._height)+i; bot.listContentMc.playlist["btn"+i].txt = checkDigits(i+1)+". "+songTitel[i]; bot.listContentMc.playlist["btn"+i].hit.onPress = function() { listClick(this._parent.getDepth()+1); }; } //checking autostart mode autoStart = this.firstChild.attributes.autoStart; if (autoStart == "yes") { playtime(); } else if (autoStart == "no") { main.controlBar.scrubber.perload.text = "OK"; cb.plabel.play(); } else if (autoStart == "random") { current_song = random(song_total)+1; playtime(); } else { current_song = int(this.firstChild.attributes.autoStart); playtime(); } } // done ! all loaded succesfully. purging trash delete audioTracks; delete data_xml; } //========================================================== //===============VIDEO CONTROLS=====视频控件================= //========================================================== function playtime() { bufferClip._visible = false; AudioPath = aPath[current_song-1]; main.welcome._visible = false; ns.play(AudioPath); cb.plabel.gotoAndStop(1); } // get the length of the Movie ns.onMetaData = function(obj) { dur = obj.duration; }; _root.onEnterFrame = videoUpdate; // the state of the video loading... function videoUpdate() { var prog = ns.time/dur; main.welcome.title.text = "<< " + songTitel[current_song-1] + ">> is preparing . "; lprog = ns.bytesLoaded/ns.bytesTotal; main.controlBar.scrubber.loaded._width = lprog*290; pr._x = -285+(swidth*prog); ns.onStatus = function(infoObject:Object) { if(infoObject.code == "NetStream.Play.Start") { sign = "started"; } else if(infoObject.code == "NetStream.Play.Stop") { sign = "closed"; if (autoStart == "random") { current_song = random(song_total)+1; } else { current_song == song_total ? current_song=1 : current_song++; } cb.plabel.play(); } }; if(sign == "started") { main.welcome._visible = false; bot.currentPlay.text = checkDigits(current_song)+". "+songTitel[current_song-1]; main.controlBar.scrubber.perload.text = Math.round(lprog*100)+"%"; hadPlayed.text = Math.floor(ns.time/60)+" m "+Math.round(ns.time%60)+" s "+Math.floor(prog*100)+" %"; timetext.text = Math.floor(dur/60)+" m "+Math.round(dur%60)+" s"; } else if(sign == "closed") { main.controlBar.scrubber.perload.text = "Closed"; hadPlayed.text = "Previous one closed"; main.welcome._visible = true; timetext.text = "none loaded"; } else if(sign == "first") { main.controlBar.scrubber.perload.text = "OK"; timetext.text = "默认的视频";//default Vedio OK hadPlayed.text = "玩家可以"; //Player OK } } function listClick(prm) { delete pausepos; current_song = prm; ns.stop(); playtime(); sign = "select"; } // list scroller bot.listContentMc.list_bg.onEnterFrame = function() { if (this.hitTest(_root._xmouse, _root._ymouse) == true && this._parent.playlist._height>this._height) { ymin = this._y+this._height-this._parent.playlist._height; ymax = this._y+3; conv = (this._ymouse-15)*1.3/this._height; conv>1 ? conv=1 : null; conv<0 ? conv=0 : null; this._parent.playlist.easeY(ymax-conv*(ymax-ymin)); } }; bot.listContentMc.playlist.setMask(bot.listContentMc.list_bg); MovieClip.prototype.easeY = function(t) { this.onEnterFrame = function() { this._y = int(t-(t-this._y)/1.5); if (this._y>t-1 && this._yplaylist cb.replayer.onRollOver = function() { showTip("Replay Video"); }; cb.replayer.onRollOut = cb.replayer.onPress=function () { removeTip(); }; cb.replayer.onRelease = function() { ns.seek(0); ns.pause(false); cb.plabel.gotoAndStop(1); }; var rewInt; cb.rewinder.onRollOver = function() { showTip("Rewind"); }; cb.rewinder.onRollOut = function() { removeTip(); }; cb.rewinder.onPress = function() { rewInt = setInterval(rewind, 200); ns.pause(true); removeTip(); }; cb.rewinder.onRelease = cb.rewinder.onReleaseOutside=function () { clearInterval(rewInt); ns.pause(false); }; function rewind() { ns.seek(ns.time-30); if (ns.time == 0) { clearInterval(rewInt); ns.pause(false); } // end if } cb.player.onRollOver = function() { showTip("Play / Pause"); }; cb.player.onRollOut = cb.player.onPress=function () { removeTip(); }; cb.player.onRelease = function() { if(sign == "closed" || sign == "first" || sign == "select") { playtime(); } else ns.pause(); cb.plabel.play(); }; cb.stopper.onRollOver = function() { showTip("Stop Video"); }; cb.stopper.onRollOut = cb.stopper.onPress=function () { removeTip(); }; cb.stopper.onRelease = function() { ns.seek(0); ns.pause(true); cb.plabel.gotoAndStop(2); removeTip(); }; var ffInt; cb.fforwarder.onRollOver = function() { showTip("Fast Forward"); }; cb.fforwarder.onRollOut = function() { removeTip(); }; cb.fforwarder.onPress = function() { removeTip(); ffInt = setInterval(ff, 200); }; cb.fforwarder.onRelease = cb.fforwarder.onReleaseOutside=function () { clearInterval(ffInt); /*if(ns.time / dur > .95) { ns.seek(0); ns.pause(false); }*/ }; function ff() { if (ns.time/dur<.95) { ns.seek(ns.time+1); } else { clearInterval(ffInt); } } pr.scrubba.onPress = function() { //ns.pause(true); _root.onEnterFrame = scrubba; pr.startDrag(false, -285, pr._y, -25, pr._y); }; pr.scrubba.onRelease = pr.scrubba.onReleaseOutside=function () { _root.onEnterFrame = videoUpdate; //ns.pause(false); pr.stopDrag(); removeTip(); }; function scrubba() { var p = (pr._x-pstart)/swidth; if (p<=lprog) { ns.seek(p*dur); } else { ns.seek(lprog); } main.tooltip.datext.text = Math.floor(p*100)+" % 处理";//processing main.tooltip._x = Math.round(main._xmouse); main.tooltip._y = Math.round(main._ymouse); main.tooltip._visible = true; } main.controlBar.scrubber.back.onRelease = controlBar.scrubber.back.onReleaseOutside=function () { var p = (this._xmouse-37)/swidth; if (p<=lprog) { ns.seek(p*dur); } else { ns.seek(lprog); } }; //====================================================== //==============SOUND CONTROL=======声音控制============= //====================================================== _root.createEmptyMovieClip("vidsound", _root.getNextHighestDepth()); vidsound.attachAudio(ns); var sou:Sound = new Sound(vidsound); sou.setVolume(75); var startxs = main.controlBar.vol._x; main.controlBar.vol._x = startxs+(70*.75); main.controlBar.vol.onPress = function() { this.startDrag(false, startxs+3, this._y, startxs+58, this._y); main.tooltip._x = Math.round(main._xmouse); main.tooltip._y = 554; this.onEnterFrame = voller; }; main.controlBar.vol.onRollOver = function() { showTip("Volume"); }; main.controlBar.vol.onRollOut = function() { removeTip(); }; main.controlBar.vol.onRelease = main.controlBar.vol.onReleaseOutside = function () { this.stopDrag(); removeTip(); delete this.onEnterFrame; }; function voller() { var perc = ((main.controlBar.vol._x-544)/(55)); sou.setVolume(Math.ceil(perc*100)); myVolume = sou.getVolume(); main.tooltip.datext.text = sou.getVolume()+"% Volume"; main.tooltip._x = Math.round(main._xmouse); main.tooltip._y = Math.round(main._ymouse); main.tooltip._visible = true; } //====================================================== //==============TOOL TIPS=======工具提示================== //====================================================== var ti:Number; function showTip(datext) { ti = getTimer(); main.tooltip.datext.text = datext; main.tooltip.onEnterFrame = function() { var tempti = getTimer(); if (tempti-ti>500) { this._x = Math.round(main._xmouse); this._y = Math.round(main._ymouse); main.tooltip._visible = true; } }; } function removeTip() { main.tooltip._visible = false; delete main.tooltip.onEnterFrame; } main.tooltip._visible = false; main.mute.onRelease = function() { if (sou.getVolume() == 0) { sou.setVolume(myVolume); cb.vol._x = 544+63*myVolume/100; } else { myVolume = sou.getVolume(); sou.setVolume(0); cb.vol._x = 544; } main.bugle.play(); }; main.mute.onRollOver = function() { showTip("切换静音");//Toggle Mute }; main.mute.onRollOut = function() { removeTip(); }; //dragging main.window.onPress = function() { this._parent.startDrag(); this._parent.swapDepths(5); bot.swapDepths(4); }; bot.listTitleBar.onPress = bot.listContentMc.listContent.onPress =function() { bot.startDrag(); bot.swapDepths(5); main.swapDepths(4); }; main.window.onRelease = main.playerTitleBar.onReleaseOutside = function() { this._parent.stopDrag(); }; bot.listTitleBar.onRelease = bot.listTitleBar.onReleaseOutside = bot.listContentMc.listContent.onRelease = bot.listContentMc.listContent.onReleaseOutside = function() { bot.stopDrag(); }; // hide or show the playList main.plBut.onRelease = function() { (bot._visible == true)?bot._visible = false:bot._visible = true; }; main.plBut.onRollOver = function() { showTip("播放列表");//PlayList }; main.plBut.onRollOut = function() { removeTip(); }; bot.close.onRelease = function() { bot._visible = false; } bot.small.onRelease = function() { bot.smallContent.play(); (bot.listContentMc._visible == true)?bot.listContentMc._visible = false:bot.listContentMc._visible = true; }
About this manual 13 Using this manual..14 Accessing ActionScript documentation15 ActionScript learning resources.. 17 Chapter 1: Introduction to ActionScript 3.0.. 19 About ActionScript..19 Advantages of ActionScript 3.0.20 What’s new in ActionScript 3.0.. 21 Core language features...21 Flash Player API features...23 Compatibility with previous versions24 Chapter 2: Getting started with ActionScript..27 Programming fundamentals27 What computer programs do..27 Variables and constants...28 Data types...29 Working with objects.. 31 Properties...31 Methods32 Events33 Basic event handling...34 Examining the event-handling process... 35 Event-handling examples.. 39 Creating object instances...40 Common program elements..42 Example: Animation portfolio piece44 Building applications with ActionScript.47 Options for organizing your code48 Choosing the right tool...50 The ActionScript development process 51 Creating your own classes...53 Strategies for designing a class. 53 Writing the code for a class..54 4 Suggestions for organizing your classes...56 Example: Creating a basic application 56 Running subsequent examples.. 63 Chapter 3: ActionScript language and syntax.67 Language overview..68 Objects and classes.69 Packages and namespaces... 70 Packages...70 Namespaces..75 Variables83 Data types87 Type checking..88 Dynamic classes..93 Data type descriptions94 Type conversions.97 Syntax 103 Operators 109 Conditionals...117 Looping119 Functions 122 Basic function concepts... 122 Function parameters 128 Functions as objects 134 Function scope.135 Chapter 4: Object-oriented programming in ActionScript.137 Basics of object-oriented programming 138 Classes140 Class definitions..141 Class property attributes... 144 Variables...147 Methods...148 Enumerations with classes..156 Embedded asset classes...158 Interfaces 158 Inheritance162 Advanced topics..171 Example: GeometricShapes..180 5 Chapter 5: Working with dates and times... 191 Basics of dates and times191 Managing calendar dates and times193 Controlling time intervals196 Example: Simple analog clock...199 Chapter 6: Working with strings203 Basics of strings.. 204 Creating strings... 205 The length property. 207 Working with characters in strings208 Comparing strings.208 Obtaining string representations of other objects.209 Concatenating strings209 Finding substrings and patterns in strings210 Converting strings between uppercase and lowercase215 Example: ASCII art..216 Chapter 7: Working with arrays223 Basics of arrays... 223 Indexed arrays...225 Associative arrays.234 Multidimensional arrays...239 Cloning arrays...241 Advanced topics..241 Example: PlayList..247 Chapter 8: Handling errors. 253 Basics of error handling...254 Types of errors..257 Error handling in ActionScript 3.0259 ActionScript 3.0 error-handling elements..260 Error-handling strategies...261 Working with the debugger version of Flash Player.261 Handling synchronous errors in an application.. 262 Creating custom error classes.. 267 Responding to error events and status268 6 Comparing the Error classes...272 ECMAScript core Error classes..272 ActionScript core Error classes.275 flash.error package Error classes276 Example: CustomErrors application278 Chapter 9: Using regular expressions...285 Basics of regular expressions..286 Regular expression syntax288 Creating an instance of a regular expression..289 Characters, metacharacters, and metasequences 290 Character classes.293 Quantifiers..295 Alternation...297 Groups297 Flags and properties. 301 Methods for using regular expressions with strings.305 Example: A Wiki parser...306 Chapter 10: Handling events313 Basics of handling events...314 How ActionScript 3.0 event handling differs from earlier versions317 The event flow..320 Event objects...322 Event listeners...327 Example: Alarm Clock335 Chapter 11: Working with XML343 Basics of XML..344 The E4X approach to XML processing348 XML objects... 350 XMLList objects...353 Initializing XML variables354 Assembling and transforming XML objects356 Traversing XML structures...358 Using XML namespaces363 XML type conversion.364 Reading external XML documents.366 Example: Loading RSS data from the Internet..367 7 Chapter 12: Display programming371 Basics of display programming.372 Core display classes377 Advantages of the display list approach 379 Working with display objects..382 Properties and methods of the DisplayObject class...382 Adding display objects to the display list... 383 Working with display object containers...383 Traversing the display list..387 Setting Stage properties..389 Handling events for display objects392 Choosing a DisplayObject subclass393 Manipulating display objects..395 Changing position395 Panning and scrolling display objects 400 Manipulating size and scaling objects402 Controlling distortion when scaling 403 Caching display objects... 405 When to enable caching.. 406 Enabling bitmap caching.. 408 Setting an opaque background color...409 Applying blending modes...409 Adjusting DisplayObject colors..410 Setting color values with code411 Altering color and brightness effects with code.412 Rotating objects..413 Fading objects..413 Masking display objects...414 Animating objects...416 Loading display content dynamically418 Loading display objects...419 Monitoring loading progress.420 Specifying loading context..421 Example: SpriteArranger...423 Chapter 13: Working with geometry431 Basics of geometry.431 Using Point objects. 434 Using Rectangle objects436 Using Matrix objects440 Example: Applying a matrix transformation to a display object.442 8 Chapter 14: Using the drawing API...447 Basics of using the drawing API..448 Understanding the Graphics class450 Drawing lines and curves...450 Drawing shapes using built-in methods453 Creating gradient lines and fills..454 Using the Math class with drawing methods..460 Animating with the drawing API.461 Example: Algorithmic Visual Generator462 Chapter 15: Filtering display objects...465 Basics of filtering display objects..465 Creating and applying filters...467 Creating a new filter467 Applying a filter..467 How filters work..470 Potential issues for working with filters470 Available display filters472 Bevel filter473 Blur filter474 Drop shadow filter..474 Glow filter...475 Gradient bevel filter.476 Gradient glow filter477 Example: Combining basic filters478 Color matrix filter. 480 Convolution filter.481 Displacement map filter484 Example: Filter Workbench...490 Chapter 16: Working with movie clips 491 Basics of movie clips491 Working with MovieClip objects.. 494 Controlling movie clip playback.494 Working with scenes497 Creating MovieClip objects with ActionScript.. 498 Exporting library symbols for ActionScript..498 Loading an external SWF file..501 Example: RuntimeAssetsExplorer503 9 Chapter 17: Working with text 509 Basics of working with text510 Displaying text513 Types of text...513 Modifying the text field contents.514 Displaying HTML text514 Using images in text fields...515 Scrolling text in a text field...516 Selecting and manipulating text..517 Capturing text input.518 Restricting text input520 Formatting text..520 Assigning text formats521 Applying cascading style sheets..521 Loading an external CSS file..523 Formatting ranges of text within a text field... 524 Advanced text rendering525 Working with static text528 Example: Newspaper-style text formatting... 529 Reading the external CSS file.530 Arranging story elements on the page...532 Altering font size to fit the field size533 Splitting text across multiple columns535 Chapter 18: Working with bitmaps539 Basics of working with bitmaps..540 The Bitmap and BitmapData classes543 Manipulating pixels.. 545 Manipulating individual pixels.545 Pixel-level collision detection.547 Copying bitmap data549 Making textures with noise functions550 Scrolling bitmaps.552 Example: Animating sprites using an offscreen bitmap...553 Chapter 19: Working with video555 Basics of video..556 Understanding the Flash Video (FLV) format..559 Understanding the Video class.560 Loading video files..561 Controlling video playback... 562 Detecting the end of a video stream563 10 Streaming video files.564 Understanding cue points...565 Writing callback methods for onCuePoint and onMetaData..566 Set the NetStream object’s client property to an Object...567 Create a custom class and define methods to handle the callback methods.568 Extend the NetStream class and add methods to handle the callback methods569 Extend the NetStream class and make it dynamic570 Set the NetStream object’s client property to this.572 Using cue points..572 Using video metadata.573 Capturing camera input 577 Understanding the Camera class577 Displaying camera content on-screen578 Designing your camera application.578 Connecting to a user’s camera..578 Verifying that cameras are installed.579 Detecting permissions for camera access..580 Maximizing video quality...582 Monitoring playback conditions..583 Sending video to a server...584 Advanced topics..585 Flash Player compatibility with encoded FLV files585 About configuring FLV files for hosting on a server585 About targeting local FLV files on the Macintosh.586 Example: Video Jukebox587 Chapter 20: Working with sound 595 Basics of working with sound.. 596 Understanding the sound architecture599 Loading external sound files..600 Working with embedded sounds. 603 Working with streaming sound files 604 Playing sounds..605 Pausing and resuming a sound606 Monitoring playback.607 Stopping streaming sounds.609 Security considerations when loading and playing sounds..609 Controlling sound volume and panning.611 Working with sound metadata.. 613 Accessing raw sound data 614 Capturing sound input617 11 Accessing a microphone... 617 Routing microphone audio to local speakers...619 Altering microphone audio...619 Detecting microphone activity. 620 Sending audio to and from a media server621 Example: Podcast Player...622 Reading RSS data for a podcast channel..623 Simplifying sound loading and playback using the SoundFacade class.623 Displaying playback progress.627 Pausing and resuming playback.628 Extending the Podcast Player example...629 Chapter 21: Capturing user input.631 Basics of user input.631 Capturing keyboard input...633 Capturing mouse input 636 Example: WordSearch641 Chapter 22: Networking and communication645 Basics of networking and communication...646 Working with external data...649 Connecting to other Flash Player instances...656 Socket connections. 662 Storing local data.668 Working with file upload and download671 Example: Building a Telnet client. 682 Example: Uploading and downloading files... 685 Chapter 23: Client system environment..695 Basics of the client system environment695 Using the System class 698 Using the Capabilities class..699 Using the ApplicationDomain class700 Using the IME class. 704 Example: Detecting system capabilities 709 12 Chapter 24: Printing... 715 Basics of printing..716 Printing a page..718 Flash Player tasks and system printing719 Setting size, scale, and orientation.722 Example: Multiple-page printing.725 Example: Scaling, cropping, and responding..727 Chapter 25: Using the external API...731 Basics of using the external API..732 External API requirements and advantages...735 Using the ExternalInterface class..736 Getting information about the external container737 Calling external code from ActionScript...737 Calling ActionScript code from the container...739 The external API’s XML format.740 Example: Using the external API with a web page container..742 Example: Using the external API with an ActiveX container..749 Chapter 26: Flash Player security757 Flash Player security overview..758 Overview of permission controls.760 Security sandboxes.. 770 Restricting networking APIs..773 Full-screen mode security...775 Loading content... 776 Cross-scripting...779 Accessing loaded media as data.783 Loading data786 Loading embedded content from SWF files imported into a security domain..788 Working with legacy content..789 Setting LocalConnection permissions.790 Controlling access to scripts in a host web page..790 Shared objects...792 Camera, microphone, clipboard, mouse, and keyboard access.794

29,027

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧