aboutsummaryrefslogtreecommitdiffstats
path: root/97suifangqa/staticfiles/plugins/jquery-ui/demos/widget/default.html
diff options
context:
space:
mode:
authorAlvin Li <liweitianux@gmail.com>2013-10-09 15:52:53 +0800
committerAlvin Li <liweitianux@gmail.com>2013-10-09 15:52:53 +0800
commit02afd8a32edb13ea7fc2266ac80092ea15c0930c (patch)
treec7a2a3f50378c017b425da47e04a71c6beaae56c /97suifangqa/staticfiles/plugins/jquery-ui/demos/widget/default.html
parentfafce2cfc72f4e1cd14ff6cb693c8ec7854159c5 (diff)
download97dev-02afd8a32edb13ea7fc2266ac80092ea15c0930c.tar.bz2
* treat 'apps/utils' as regular django app; which used to store
general tools for used in other apps * moved 'templatetags' from 'apps/indicator' to 'apps/utils' * '.gitignore' to ignore 'fixtures_bak' * moved js plugins from 'apps/indicator/static/plugins' to 'staticfiles/plugins' apps/recommend: * updated 'recommend.models'; o commented 'recommend.models.ResearchCombination' (not used) * implemented views 'add_edit_blog_info' and 'ajax_add_edit_configs'; * added pages 'templates/recommend/add_edit_blog_info.html', 'add_edit_blog_info_error.html'; o related css and javascripts files * added 'tools.py'; * added 'utils/tools.py' for placing generic functions; * deleted 'initial_data.json' (mv 'fixtures' to 'fixtures_bak'); * small fixes to 'indicator.models', 'sciblog.models' and 'sfaccount.views' * fixed automatically show 'proper_nouns' annotation in blog: recovered the line 'import signals' in 'sciblog.models' * added 'is_ok()' method for 'recommend.models.ResearchConfig';
Diffstat (limited to '97suifangqa/staticfiles/plugins/jquery-ui/demos/widget/default.html')
-rw-r--r--97suifangqa/staticfiles/plugins/jquery-ui/demos/widget/default.html178
1 files changed, 178 insertions, 0 deletions
diff --git a/97suifangqa/staticfiles/plugins/jquery-ui/demos/widget/default.html b/97suifangqa/staticfiles/plugins/jquery-ui/demos/widget/default.html
new file mode 100644
index 0000000..8931be4
--- /dev/null
+++ b/97suifangqa/staticfiles/plugins/jquery-ui/demos/widget/default.html
@@ -0,0 +1,178 @@
+<!doctype html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <title>jQuery UI Widget - Default functionality</title>
+ <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
+ <script src="../../jquery-1.9.1.js"></script>
+ <script src="../../ui/jquery.ui.core.js"></script>
+ <script src="../../ui/jquery.ui.position.js"></script>
+ <script src="../../ui/jquery.ui.widget.js"></script>
+ <script src="../../ui/jquery.ui.button.js"></script>
+ <link rel="stylesheet" href="../demos.css">
+ <style>
+ .custom-colorize {
+ font-size: 20px;
+ position: relative;
+ width: 75px;
+ height: 75px;
+ }
+ .custom-colorize-changer {
+ font-size: 10px;
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ }
+ </style>
+ <script>
+ $(function() {
+ // the widget definition, where "custom" is the namespace,
+ // "colorize" the widget name
+ $.widget( "custom.colorize", {
+ // default options
+ options: {
+ red: 255,
+ green: 0,
+ blue: 0,
+
+ // callbacks
+ change: null,
+ random: null
+ },
+
+ // the constructor
+ _create: function() {
+ this.element
+ // add a class for theming
+ .addClass( "custom-colorize" )
+ // prevent double click to select text
+ .disableSelection();
+
+ this.changer = $( "<button>", {
+ text: "change",
+ "class": "custom-colorize-changer"
+ })
+ .appendTo( this.element )
+ .button();
+
+ // bind click events on the changer button to the random method
+ this._on( this.changer, {
+ // _on won't call random when widget is disabled
+ click: "random"
+ });
+ this._refresh();
+ },
+
+ // called when created, and later when changing options
+ _refresh: function() {
+ this.element.css( "background-color", "rgb(" +
+ this.options.red +"," +
+ this.options.green + "," +
+ this.options.blue + ")"
+ );
+
+ // trigger a callback/event
+ this._trigger( "change" );
+ },
+
+ // a public method to change the color to a random value
+ // can be called directly via .colorize( "random" )
+ random: function( event ) {
+ var colors = {
+ red: Math.floor( Math.random() * 256 ),
+ green: Math.floor( Math.random() * 256 ),
+ blue: Math.floor( Math.random() * 256 )
+ };
+
+ // trigger an event, check if it's canceled
+ if ( this._trigger( "random", event, colors ) !== false ) {
+ this.option( colors );
+ }
+ },
+
+ // events bound via _on are removed automatically
+ // revert other modifications here
+ _destroy: function() {
+ // remove generated elements
+ this.changer.remove();
+
+ this.element
+ .removeClass( "custom-colorize" )
+ .enableSelection()
+ .css( "background-color", "transparent" );
+ },
+
+ // _setOptions is called with a hash of all options that are changing
+ // always refresh when changing options
+ _setOptions: function() {
+ // _super and _superApply handle keeping the right this-context
+ this._superApply( arguments );
+ this._refresh();
+ },
+
+ // _setOption is called for each individual option that is changing
+ _setOption: function( key, value ) {
+ // prevent invalid color values
+ if ( /red|green|blue/.test(key) && (value < 0 || value > 255) ) {
+ return;
+ }
+ this._super( key, value );
+ }
+ });
+
+ // initialize with default options
+ $( "#my-widget1" ).colorize();
+
+ // initialize with two customized options
+ $( "#my-widget2" ).colorize({
+ red: 60,
+ blue: 60
+ });
+
+ // initialize with custom green value
+ // and a random callback to allow only colors with enough green
+ $( "#my-widget3" ).colorize( {
+ green: 128,
+ random: function( event, ui ) {
+ return ui.green > 128;
+ }
+ });
+
+ // click to toggle enabled/disabled
+ $( "#disable" ).click(function() {
+ // use the custom selector created for each widget to find all instances
+ // all instances are toggled together, so we can check the state from the first
+ if ( $( ":custom-colorize" ).colorize( "option", "disabled" ) ) {
+ $( ":custom-colorize" ).colorize( "enable" );
+ } else {
+ $( ":custom-colorize" ).colorize( "disable" );
+ }
+ });
+
+ // click to set options after initalization
+ $( "#black" ).click( function() {
+ $( ":custom-colorize" ).colorize( "option", {
+ red: 0,
+ green: 0,
+ blue: 0
+ });
+ });
+ });
+ </script>
+</head>
+<body>
+
+<div>
+ <div id="my-widget1">color me</div>
+ <div id="my-widget2">color me</div>
+ <div id="my-widget3">color me</div>
+ <button id="disable">Toggle disabled option</button>
+ <button id="black">Go black</button>
+</div>
+
+<div class="demo-description">
+<p>This demo shows a simple custom widget built using the widget factory (jquery.ui.widget.js).</p>
+<p>The three boxes are initialized in different ways. Clicking them changes their background color. View source to see how it works, its heavily commented</p>
+</div>
+</body>
+</html>