This commit is contained in:
Cythral 2016-06-13 19:33:58 +00:00 committed by GitHub
commit 7785ef2b7b
4 changed files with 208 additions and 192 deletions

View file

@ -1,139 +1,153 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset=utf-8> <html lang="en">
<title>Scratch HTML5 vs. Flash</title> <head>
<meta charset="utf-8">
<title>Scratch HTML5 vs Flash</title>
<link rel=stylesheet href=player.css> <!-- iPad properties: set width, disable pinch zoom -->
<link rel=stylesheet href=compare.css> <meta name="apple-mobile-web-app-capable" content="yes">
<meta name="viewport" content="user-scalable=no, width=540">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<script src=http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js></script> <!-- Stylesheets -->
<script src=http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js></script> <link rel=stylesheet href="player.css">
<link rel=stylesheet href="compare.css">
<!-- Scripts -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>
<script src="js/util/Timer.js" defer></script>
<script src="js/util/OffsetBuffer.js" defer></script>
<script src="js/util/Color.js" defer></script>
<script src="js/util/Rectangle.js" defer></script>
<script src="js/Sprite.js" defer></script>
<script src="js/Reporter.js" defer></script>
<script src="js/Stage.js" defer></script>
<script src="js/sound/WAVFile.js" defer></script>
<script src="js/sound/SoundDecoder.js" defer></script>
<script src="js/sound/SoundBank.js" defer></script>
<script src="js/sound/NotePlayer.js" defer></script>
<script src="soundbank/Instr.js" defer></script>
<script src="js/IO.js" defer></script>
<script src="js/primitives/VarListPrims.js" defer></script>
<script src="js/primitives/MotionAndPenPrims.js" defer></script>
<script src="js/primitives/LooksPrims.js" defer></script>
<script src="js/primitives/SensingPrims.js" defer></script>
<script src="js/primitives/SoundPrims.js" defer></script>
<script src="js/primitives/Primitives.js" defer></script>
<script src="js/Interpreter.js" defer></script>
<script src="js/Runtime.js" defer></script>
<script src="js/Scratch.js" defer></script>
<script src="js/init.js" defer></script>
<script>
$(document).ready(function() {
var flashLog = null;
var project_id = location.hash && parseInt(location.hash.substr(1)) || 10000160;
$(function() {
// The flashvars tell flash about the project data (and autostart=true)
var flashvars = {
server: encodeURIComponent('scratch.mit.edu'),
debugOps: true,
debugOpCmd: 'debugFlash',
project_title: '',
project_id: project_id
};
<script> var params = {
$(document).ready(function() { allowscriptaccess: 'always',
var project_id = location.hash && parseInt(location.hash.substr(1)) || 10000160; allowfullscreen: 'false',
var scratch = new Scratch(project_id); wmode: 'direct',
}); menu: 'false'
</script> };
<script> var flashPlayer = null;
var flashLog = null; var swf_url = "http://cdn.scratch.mit.edu/scratchr2/static/Scratch.swf?brkCache="+project_id;
var project_id = location.hash && parseInt(location.hash.substr(1)) || 10000160; swfobject.embedSWF(swf_url, "flash-scratch", "482", "402", "10.2.0",
$(function() { "http://cdn.scratch.mit.edu/scratchr2/static/expressInstall.swf",
// The flashvars tell flash about the project data (and autostart=true) flashvars, params, null, function(e) {
var flashvars = { $('#flash-scratch').css('visibility', 'visible');
server: encodeURIComponent('scratch.mit.edu'), if (e.success) flashPlayer = e.ref;
debugOps: true, });
debugOpCmd: 'debugFlash',
project_title: '',
project_id: project_id
};
var params = { $('#trigger-green-flag, #overlay').click(function() {
allowscriptaccess: 'always', flashPlayer.ASstartRunning();
allowfullscreen: 'false', });
wmode: 'direct',
menu: 'false'
};
var flashPlayer = null; // Stop button behavior
var swf_url = "http://cdn.scratch.mit.edu/scratchr2/static/Scratch.swf?brkCache="+project_id; $('#trigger-stop').click(function() {
swfobject.embedSWF(swf_url, "flash-scratch", "482", "402", "10.2.0", flashPlayer.ASstopRunning();
"http://cdn.scratch.mit.edu/scratchr2/static/expressInstall.swf", });
flashvars, params, null, function(e) {
$('#flash-scratch').css('visibility', 'visible'); flashLog = $('#flash-debug');
if (e.success) flashPlayer = e.ref; var jsLog = $('#js-debug');
interp.debugOps = true;
interp.debugFunc = function(opCount, opName, args) {
var text = opCount + ': ' + opName + '(' + args.join(', ') + ')';
jsLog.val(jsLog.val() + text + "\n");
};
// Setup synchronized scrolling
flashLog.scroll(function() {
jsLog.scrollTop(flashLog.scrollTop());
});
jsLog.scroll(function() {
flashLog.scrollTop(jsLog.scrollTop());
});
}); });
$('#trigger-green-flag, #overlay').click(function() { function debugFlash(opCount, opName, args) {
flashPlayer.ASstartRunning(); var text = opCount + ': '+opName+'('+args.join(', ')+')';
}); flashLog.val(flashLog.val() + text + "\n");
}
// Stop button behavior })
$('#trigger-stop').click(function() { </script>
flashPlayer.ASstopRunning(); </head>
}); <body>
<div class="container">
flashLog = $('#flash-debug'); <div id="player-container">
var jsLog = $('#js-debug'); <div class="arrow vertical" id="up"></div>
interp.debugOps = true; <div class="arrow vertical" id="down"></div>
interp.debugFunc = function(opCount, opName, args) { <div class="arrow horizontal" id="left"></div>
var text = opCount + ': ' + opName + '(' + args.join(', ') + ')'; <div class="arrow horizontal" id="right"></div>
jsLog.val(jsLog.val() + text + "\n"); <div id="player-header">
}; <div id="player-header-preload"></div>
<div id="player-header-version">HTML5</div>
// Setup synchronized scrolling <button id=toggle-fullscreen tabindex=1></button>
flashLog.scroll(function() { <button id=trigger-stop tabindex=3></button>
jsLog.scrollTop(flashLog.scrollTop()); <button id=trigger-green-flag tabindex=2></button>
}); </div>
<div id="player-content">
jsLog.scroll(function() { <div id="container"></div>
flashLog.scrollTop(jsLog.scrollTop()); <div id="overlay"></div>
}); <div id="preloader">
}); <div id="preloader-progress"><div id="preloader-progress-bar"></div></div>
<div id="preloader-caption">Loading project&hellip;</div>
function debugFlash(opCount, opName, args) { <div id="preloader-details"></div>
var text = opCount + ': '+opName+'('+args.join(', ')+')'; </div>
flashLog.val(flashLog.val() + text + "\n");
}
</script>
<div class=container>
<div id=player-container>
<div class="arrow vertical" id=up></div>
<div class="arrow vertical" id=down></div>
<div class="arrow horizontal" id=left></div>
<div class="arrow horizontal" id=right></div>
<div id=player-header>
<div id=player-header-preload></div>
<div id=player-header-version>HTML5</div>
<button id=toggle-fullscreen tabindex=1></button>
<button id=trigger-stop tabindex=3></button>
<button id=trigger-green-flag tabindex=2></button>
</div>
<div id=player-content>
<div id=container></div>
<div id=overlay></div>
<div id=preloader>
<div id=preloader-progress><div id=preloader-progress-bar></div></div>
<div id=preloader-caption>Loading project&hellip;</div>
<div id=preloader-details></div>
</div> </div>
</div> </div>
<textarea id=js-debug readonly></textarea>
<div id="project-picker">
<span id="address-hint">http://scratch.mit.edu/projects/</span><input id=project-id placeholder=10000160><button id="go-project">&rarr;</button>
</div>
</div> </div>
<textarea id=js-debug readonly></textarea> <div class="container">
<div id=project-picker> <div id="flash-scratch">
<span id=address-hint>http://scratch.mit.edu/projects/</span><input id=project-id placeholder=10000160><button id=go-project>&rarr;</button> <p>Oh Noes! Scratch project cannot display.<br>Flash player is disabled, missing, or less than version 10.2.</p>
<a href=http://www.adobe.com/go/getflashplayer>
<img src=http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif alt="Get Adobe Flash player" target=_blank>
</a>
</div>
<textarea id="flash-debug" readonly></textarea>
</div> </div>
</div><div class=container> </body>
<div id=flash-scratch> </html>
<p>Oh Noes! Scratch project cannot display.<br>Flash player is disabled, missing, or less than version 10.2.</p>
<a href=http://www.adobe.com/go/getflashplayer>
<img src=http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif alt="Get Adobe Flash player" target=_blank>
</a>
</div>
<textarea id=flash-debug readonly></textarea>
</div>
<script src=js/util/Timer.js></script>
<script src=js/util/OffsetBuffer.js></script>
<script src=js/util/Color.js></script>
<script src=js/util/Rectangle.js></script>
<script src=js/Sprite.js></script>
<script src=js/Reporter.js></script>
<script src=js/Stage.js></script>
<script src=js/sound/WAVFile.js></script>
<script src=js/sound/SoundDecoder.js></script>
<script src=js/sound/SoundBank.js></script>
<script src=js/sound/NotePlayer.js></script>
<script src=soundbank/Instr.js></script>
<script src=js/IO.js></script>
<script src=js/primitives/VarListPrims.js></script>
<script src=js/primitives/MotionAndPenPrims.js></script>
<script src=js/primitives/LooksPrims.js></script>
<script src=js/primitives/SensingPrims.js></script>
<script src=js/primitives/SoundPrims.js></script>
<script src=js/primitives/Primitives.js></script>
<script src=js/Interpreter.js></script>
<script src=js/Runtime.js></script>
<script src=js/Scratch.js></script>

View file

@ -1,75 +1,73 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset=utf-8> <html lang="en">
<title>Scratch HTML5</title> <head>
<meta charset="utf-8">
<title>Scratch HTML5</title>
<!-- iPad properties: set width, disable pinch zoom --> <!-- iPad properties: set width, disable pinch zoom -->
<meta name=apple-mobile-web-app-capable content=yes> <meta name="apple-mobile-web-app-capable" content="yes">
<meta name=viewport content="user-scalable=no, width=540"> <meta name="viewport" content="user-scalable=no, width=540">
<meta name=apple-mobile-web-app-status-bar-style content=black> <meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel=stylesheet href=player.css> <!-- Stylesheets -->
<link rel=stylesheet href=index.css> <link rel=stylesheet href="player.css">
<link rel=stylesheet href="index.css">
<script src=http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js></script> <!-- Scripts -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="js/util/Timer.js" defer></script>
<script type="text/javascript"> <script src="js/util/OffsetBuffer.js" defer></script>
$(document).ready(function() { <script src="js/util/Color.js" defer></script>
var project_id = location.hash && parseInt(location.hash.substr(1)) || 10000160; <script src="js/util/Rectangle.js" defer></script>
var scratch = new Scratch(project_id); <script src="js/Sprite.js" defer></script>
}); <script src="js/Reporter.js" defer></script>
</script> <script src="js/Stage.js" defer></script>
<script src="js/sound/WAVFile.js" defer></script>
<div id=player-container> <script src="js/sound/SoundDecoder.js" defer></script>
<div class="arrow vertical" id=up></div> <script src="js/sound/SoundBank.js" defer></script>
<div class="arrow vertical" id=down></div> <script src="js/sound/NotePlayer.js" defer></script>
<div class="arrow horizontal" id=left></div> <script src="soundbank/Instr.js" defer></script>
<div class="arrow horizontal" id=right></div> <script src="js/IO.js" defer></script>
<div id=player-header> <script src="js/primitives/VarListPrims.js" defer></script>
<div id=player-header-preload></div> <script src="js/primitives/MotionAndPenPrims.js" defer></script>
<div id=player-header-version>HTML5</div> <script src="js/primitives/LooksPrims.js" defer></script>
<button id=toggle-fullscreen tabindex=1></button> <script src="js/primitives/SensingPrims.js" defer></script>
<button id=trigger-stop tabindex=3></button> <script src="js/primitives/SoundPrims.js" defer></script>
<button id=trigger-green-flag tabindex=2></button> <script src="js/primitives/Primitives.js" defer></script>
</div> <script src="js/Interpreter.js" defer></script>
<div id=player-content> <script src="js/Runtime.js" defer></script>
<div id=container></div> <script src="js/Scratch.js" defer></script>
<div id=overlay></div> <script src="js/init.js" defer></script>
<div id=preloader> </head>
<div id=preloader-progress><div id=preloader-progress-bar></div></div> <body>
<div id=preloader-caption>Loading project&hellip;</div> <div id=player-container>
<div id=preloader-details></div> <div class="arrow vertical" id=up></div>
<div class="arrow vertical" id=down></div>
<div class="arrow horizontal" id=left></div>
<div class="arrow horizontal" id=right></div>
<div id=player-header>
<div id=player-header-preload></div>
<div id=player-header-version>HTML5</div>
<button id=toggle-fullscreen tabindex=1></button>
<button id=trigger-stop tabindex=3></button>
<button id=trigger-green-flag tabindex=2></button>
</div>
<div id=player-content>
<div id=container></div>
<div id=overlay></div>
<div id=preloader>
<div id=preloader-progress><div id=preloader-progress-bar></div></div>
<div id=preloader-caption>Loading project&hellip;</div>
<div id=preloader-details></div>
</div>
</div> </div>
</div> </div>
</div>
<div id=project-picker> <div id=project-picker>
<span id=address-hint>http://scratch.mit.edu/projects/</span><input id=project-id placeholder=10000160><button id=go-project>&rarr;</button> <span id=address-hint>http://scratch.mit.edu/projects/</span><input id=project-id placeholder=10000160><button id=go-project>&rarr;</button>
</div> </div>
<h1>Scratch HTML5 player</h1> <h1>Scratch HTML5 player</h1>
<p>The Scratch HTML5 player is still in development. Feedback is welcome! Please report any bugs (or differences from the Flash player) <a href=https://github.com/LLK/scratch-html5>on Github</a>.</p> <p>The Scratch HTML5 player is still in development. Feedback is welcome! Please report any bugs (or differences from the Flash player) <a href=https://github.com/LLK/scratch-html5>on Github</a>.</p>
</body>
<script src=js/util/Timer.js></script> </html>
<script src=js/util/OffsetBuffer.js></script>
<script src=js/util/Color.js></script>
<script src=js/util/Rectangle.js></script>
<script src=js/Sprite.js></script>
<script src=js/Reporter.js></script>
<script src=js/Stage.js></script>
<script src=js/sound/WAVFile.js></script>
<script src=js/sound/SoundDecoder.js></script>
<script src=js/sound/SoundBank.js></script>
<script src=js/sound/NotePlayer.js></script>
<script src=soundbank/Instr.js></script>
<script src=js/IO.js></script>
<script src=js/primitives/VarListPrims.js></script>
<script src=js/primitives/MotionAndPenPrims.js></script>
<script src=js/primitives/LooksPrims.js></script>
<script src=js/primitives/SensingPrims.js></script>
<script src=js/primitives/SoundPrims.js></script>
<script src=js/primitives/Primitives.js></script>
<script src=js/Interpreter.js></script>
<script src=js/Runtime.js></script>
<!-- <script src=js/Scratch.js></script> -->
<script type="text/JavaScript" src="js/Scratch.js"></script>

4
js/init.js Normal file
View file

@ -0,0 +1,4 @@
$(document).ready(function() {
var project_id = location.hash && parseInt(location.hash.substr(1)) || 10000160;
var scratch = new Scratch(project_id);
});

View file

@ -11,7 +11,7 @@
}, },
"dependencies": {}, "dependencies": {},
"devDependencies": { "devDependencies": {
"jasmine-jquery": "~1.3.3", "jasmine-jquery": "~2.0.5",
"jscs": "~1.3.0", "jscs": "~1.3.0",
"karma": "~0.10", "karma": "~0.10",
"karma-html2js-preprocessor": "~0.1.0", "karma-html2js-preprocessor": "~0.1.0",