mirror of
https://github.com/jquery/jquery-ui.git
synced 2025-01-07 20:34:24 +00:00
Merge branch 'master' into tooltip
This commit is contained in:
commit
9230b7263b
108
build/build.xml
108
build/build.xml
@ -22,22 +22,24 @@
|
||||
<property name="release.filename" value="jquery-ui-${release.version}" />
|
||||
|
||||
<property name="dist.dir" value="dist/${release.filename}/" />
|
||||
<property name="cdndist.dir" value="dist/${release.filename}-googlecdn" />
|
||||
<property name="build.dir" value="build" />
|
||||
<property name="ui.dir" value="../" />
|
||||
<property name="src.dir" value="${ui.dir}/ui/" />
|
||||
<property name="theme.dir" value="${ui.dir}/themes/base/" />
|
||||
<property name="docs.dir" value="${ui.dir}/docs/" />
|
||||
|
||||
<property name="min.folder" value="${dist.dir}/ui/minified" />
|
||||
<property name="min.dir" value="${dist.dir}/ui/minified" />
|
||||
|
||||
<property name="concatenated" value="jquery-ui" />
|
||||
<property name="concatenated.i18n" value="jquery-ui-i18n" />
|
||||
|
||||
<property name="core.files" value="jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.draggable.js, jquery.ui.droppable.js, jquery.ui.resizable.js, jquery.ui.selectable.js, jquery.ui.sortable.js, jquery.effects.core.js" />
|
||||
<property name="core.files.min" value="jquery.ui.core.min.js, jquery.ui.widget.min.js, jquery.ui.mouse.min.js, jquery.ui.draggable.min.js, jquery.ui.droppable.min.js, jquery.ui.resizable.min.js, jquery.ui.selectable.min.js, jquery.ui.sortable.min.js, jquery.effects.core.min.js" />
|
||||
|
||||
<property description="Google Closure" name="closure-jar" value="${build.dir}/google-compiler-20091218.jar" />
|
||||
|
||||
<target name="deploy-release" depends="docs-download, concatenate, minify, copy, replace-version, prepend-header, zip" description="Release builder">
|
||||
<target name="deploy-release" depends="clean, docs-download, concatenate, minify, copy, replace-version, prepend-header, zip, googlecdn" description="Release builder">
|
||||
</target>
|
||||
|
||||
<target name="replace-version">
|
||||
@ -49,7 +51,6 @@
|
||||
</target>
|
||||
|
||||
<target name="prepend-header">
|
||||
<!-- TODO: refactor this ugly mess -->
|
||||
<copy todir="${dist.dir}/headers/">
|
||||
<fileset dir="${dist.dir}/ui/" includes="*.js" />
|
||||
</copy>
|
||||
@ -57,7 +58,7 @@
|
||||
<fileset dir="${dist.dir}/headers/" includes="*.js"/>
|
||||
</replaceregexp>
|
||||
<for param="file">
|
||||
<path><fileset dir="${dist.dir}/ui/minified/" includes="*.js" /></path>
|
||||
<path><fileset dir="${min.dir}/" includes="*.js" /></path>
|
||||
<sequential>
|
||||
<propertyregex override="yes" property="target" input="@{file}" regexp=".*[\\/](.+)\.min\.js$" replace="\1"/>
|
||||
<concat destfile="${dist.dir}/ui-headered/${target}.min.js">
|
||||
@ -66,9 +67,33 @@
|
||||
</concat>
|
||||
</sequential>
|
||||
</for>
|
||||
<copy todir="${dist.dir}/ui/minified">
|
||||
<copy todir="${min.dir}">
|
||||
<fileset dir="${dist.dir}/ui-headered/" includes="*.js" />
|
||||
</copy>
|
||||
|
||||
<!-- once more for the i18n files -->
|
||||
<!-- need to clean up headers in those files first
|
||||
<copy todir="${dist.dir}/headers/i18n/">
|
||||
<fileset dir="${dist.dir}/ui/i18n/" includes="*.js" />
|
||||
</copy>
|
||||
<replaceregexp match="^(\/\*.*?\*\/\s).+" replace="\1" flags="s">
|
||||
<fileset dir="${dist.dir}/headers/i18n/" includes="*.js"/>
|
||||
</replaceregexp>
|
||||
<for param="file">
|
||||
<path><fileset dir="${min.dir}/i18n/" includes="*.js" /></path>
|
||||
<sequential>
|
||||
<propertyregex override="yes" property="target" input="@{file}" regexp=".*[\\/](.+)\.min\.js$" replace="\1"/>
|
||||
<concat destfile="${dist.dir}/ui-headered/i18n/${target}.min.js">
|
||||
<header file="${dist.dir}/headers/i18n/${target}.js" />
|
||||
<fileset file="@{file}" />
|
||||
</concat>
|
||||
</sequential>
|
||||
</for>
|
||||
<copy todir="${min.dir}/i18n/">
|
||||
<fileset dir="${dist.dir}/ui-headered/i18n/" includes="*.js" />
|
||||
</copy>
|
||||
-->
|
||||
|
||||
<delete dir="${dist.dir}/headers/" />
|
||||
<delete dir="${dist.dir}/ui-headered/" />
|
||||
</target>
|
||||
@ -108,44 +133,43 @@
|
||||
|
||||
<target name="minify" depends="concatenate" description="Remove all comments and whitespace, no compression, great in combination with GZip">
|
||||
<echo message="Building minified" />
|
||||
<delete dir="${min.folder}/" />
|
||||
<mkdir dir="${min.folder}" />
|
||||
<delete dir="${min.folder}/i18n/" />
|
||||
<mkdir dir="${min.folder}/i18n/" />
|
||||
<delete dir="${min.dir}/" />
|
||||
<mkdir dir="${min.dir}" />
|
||||
<delete dir="${min.dir}/i18n/" />
|
||||
<mkdir dir="${min.dir}/i18n/" />
|
||||
|
||||
<apply executable="java" parallel="false">
|
||||
<fileset dir="${src.dir}/" includes="jquery.ui.*.js, jquery.effects.*.js" />
|
||||
<arg line="-jar" />
|
||||
<arg path="build/google-compiler-20091218.jar" />
|
||||
<arg path="${closure-jar}" />
|
||||
<arg value="--warning_level" />
|
||||
<arg value="QUIET" />
|
||||
<arg value="--js_output_file" />
|
||||
<targetfile />
|
||||
<arg value="--js" />
|
||||
<mapper type="glob" from="*.js" to="${min.folder}/*.min.js" />
|
||||
<mapper type="glob" from="*.js" to="${min.dir}/*.min.js" />
|
||||
</apply>
|
||||
|
||||
<apply executable="java" parallel="false" verbose="true" dest="${dist.dir}">
|
||||
<filelist dir="${dist.dir}/ui/" files="${concatenated}.js" />
|
||||
<concat destfile="${min.dir}/${concatenated}.min.js">
|
||||
<filelist dir="${min.dir}" files="${core.files.min}" />
|
||||
<fileset dir="${min.dir}" includes="jquery.ui.*.js, jquery.effects.*.js" excludes="${core.files.min}" />
|
||||
</concat>
|
||||
|
||||
<apply executable="java" parallel="false">
|
||||
<fileset dir="${src.dir}/i18n/" includes="jquery.ui.*.js" />
|
||||
<arg line="-jar" />
|
||||
<arg path="build/google-compiler-20091218.jar" />
|
||||
<arg path="${closure-jar}" />
|
||||
<arg value="--warning_level" />
|
||||
<arg value="QUIET" />
|
||||
<arg value="--js_output_file" />
|
||||
<targetfile />
|
||||
<arg value="--js" />
|
||||
<mapper type="glob" from="${concatenated}.js" to="tmpmin" />
|
||||
<mapper type="glob" from="*.js" to="${min.dir}/i18n/*.min.js" />
|
||||
</apply>
|
||||
<concat destfile="${min.folder}/jquery-ui.min.js">
|
||||
<filelist files="${src.dir}/jquery.ui.core.js, ${dist.dir}/tmpmin"/>
|
||||
<filterchain>
|
||||
<headfilter lines="9"/>
|
||||
</filterchain>
|
||||
|
||||
<concat destfile="${min.dir}/i18n/${concatenated.i18n}.min.js">
|
||||
<fileset dir="${min.dir}/i18n" includes="jquery.ui.*.js" />
|
||||
</concat>
|
||||
<concat destfile="${min.folder}/jquery-ui.min.js" append="yes">
|
||||
<filelist files="${dist.dir}/tmpmin"/>
|
||||
</concat>
|
||||
<delete file="${dist.dir}/tmpmin"/>
|
||||
|
||||
<echo message="Minified ui/ built." />
|
||||
</target>
|
||||
@ -258,4 +282,40 @@
|
||||
<echo message="All trailing spaces removed." />
|
||||
</target>
|
||||
|
||||
<target name="googlecdn">
|
||||
<delete dir="${cdndist.dir}" />
|
||||
<mkdir dir="${cdndist.dir}" />
|
||||
<copy todir="${cdndist.dir}">
|
||||
<fileset dir=".." includes="AUTHORS.txt, GPL-LICENSE.txt, MIT-LICENSE.txt, version.txt" />
|
||||
</copy>
|
||||
<copy todir="${cdndist.dir}">
|
||||
<fileset dir="${dist.dir}ui" includes="jquery-ui.js" />
|
||||
<fileset dir="${dist.dir}ui/minified" includes="jquery-ui.min.js" />
|
||||
</copy>
|
||||
<copy todir="${cdndist.dir}/i18n">
|
||||
<fileset dir="${dist.dir}ui/i18n" />
|
||||
<fileset dir="${dist.dir}ui/minified/i18n" />
|
||||
</copy>
|
||||
<copy todir="${cdndist.dir}/themes">
|
||||
<fileset dir="${dist.dir}themes" />
|
||||
</copy>
|
||||
<checksum>
|
||||
<fileset dir="${cdndist.dir}" />
|
||||
</checksum>
|
||||
<for param="file">
|
||||
<path><fileset dir="${cdndist.dir}" includes="**/" excludes="**/*.MD5" /></path>
|
||||
<sequential>
|
||||
<!-- @{file} is an absolute path, use that ugly regexes to make it relative -->
|
||||
<propertyregex override="yes" property="relativepath" input="@{file}" regexp=".+?googlecdn[\\/](.+)$" replace="\1"/>
|
||||
<propertyregex override="yes" property="relativepath" input="${relativepath}" regexp="\\" replace="/" global="true" />
|
||||
<concat destfile="${cdndist.dir}/MANIFEST" append="yes">${relativepath} </concat>
|
||||
<concat destfile="${cdndist.dir}/MANIFEST" append="yes"><file file="@{file}.MD5" /></concat>
|
||||
</sequential>
|
||||
</for>
|
||||
<delete dir="${cdndist.dir}" includes="**/*.MD5" />
|
||||
<zip destfile="${dist.dir}/../${release.filename}-googlecdn.zip">
|
||||
<zipfileset dir="${cdndist.dir}/" />
|
||||
</zip>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
|
@ -30,24 +30,23 @@
|
||||
var matcher = new RegExp(request.term, "i");
|
||||
response(select.children("option").map(function() {
|
||||
var text = $(this).text();
|
||||
if (!request.term || matcher.test(text))
|
||||
if (this.value && (!request.term || matcher.test(text)))
|
||||
return {
|
||||
id: $(this).val(),
|
||||
id: this.value,
|
||||
label: text.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + $.ui.autocomplete.escapeRegex(request.term) + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>"),
|
||||
value: text
|
||||
};
|
||||
}));
|
||||
},
|
||||
delay: 0,
|
||||
select: function(e, ui) {
|
||||
change: function(event, ui) {
|
||||
if (!ui.item) {
|
||||
// remove invalid value, as it didn't match anything
|
||||
$(this).val("");
|
||||
return false;
|
||||
}
|
||||
$(this).focus();
|
||||
select.val(ui.item.id);
|
||||
self._trigger("selected", null, {
|
||||
self._trigger("selected", event, {
|
||||
item: select.find("[value='" + ui.item.id + "']")
|
||||
});
|
||||
|
||||
@ -56,6 +55,7 @@
|
||||
})
|
||||
.addClass("ui-widget ui-widget-content ui-corner-left");
|
||||
$("<button> </button>")
|
||||
.attr("tabIndex", -1)
|
||||
.attr("title", "Show All Items")
|
||||
.insertAfter(input)
|
||||
.button({
|
||||
@ -81,7 +81,10 @@
|
||||
})(jQuery);
|
||||
|
||||
$(function() {
|
||||
$("select").combobox();
|
||||
$("#combobox").combobox();
|
||||
$("#toggle").click(function() {
|
||||
$("#combobox").toggle();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
@ -91,7 +94,8 @@
|
||||
|
||||
<div class="ui-widget">
|
||||
<label>Your preferred programming language: </label>
|
||||
<select>
|
||||
<select id="combobox">
|
||||
<option value="">Select one...</option>
|
||||
<option value="a">asp</option>
|
||||
<option value="c">c</option>
|
||||
<option value="cpp">c++</option>
|
||||
@ -107,6 +111,7 @@
|
||||
<option value="s">scala</option>
|
||||
</select>
|
||||
</div>
|
||||
<button id="toggle">Show underlying select</button>
|
||||
|
||||
</div><!-- End demo -->
|
||||
|
||||
|
@ -16,6 +16,7 @@
|
||||
<li><a href="combobox.html">Combobox</a></li>
|
||||
<li><a href="custom-data.html">Custom data and display</a></li>
|
||||
<li><a href="xml.html">XML data parsed once</a></li>
|
||||
<li><a href="categories.html">Categories</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -11,21 +11,23 @@
|
||||
<link type="text/css" href="../demos.css" rel="stylesheet" />
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("#rerun").button().click(function() {
|
||||
alert("Running the last action");
|
||||
})
|
||||
$("#rerun")
|
||||
.button()
|
||||
.click( function() {
|
||||
alert( "Running the last action" );
|
||||
})
|
||||
.next()
|
||||
.button({
|
||||
text: false,
|
||||
icons: {
|
||||
primary: "ui-icon-triangle-1-s"
|
||||
}
|
||||
})
|
||||
.click(function() {
|
||||
alert("Could display a menu to select an action");
|
||||
})
|
||||
.button( {
|
||||
text: false,
|
||||
icons: {
|
||||
primary: "ui-icon-triangle-1-s"
|
||||
}
|
||||
})
|
||||
.click( function() {
|
||||
alert( "Could display a menu to select an action" );
|
||||
})
|
||||
.parent()
|
||||
.buttonset();
|
||||
.buttonset();
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
|
@ -15,6 +15,7 @@
|
||||
<li><a href="propagation.html">Prevent propagation</a></li>
|
||||
<li><a href="visual-feedback.html">Visual feedback</a></li>
|
||||
<li><a href="revert.html">Revert draggable position</a></li>
|
||||
<li><a href="shopping-cart.html">Shopping Cart</a></li>
|
||||
<li><a href="photo-manager.html">Simple photo manager</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
101
demos/droppable/shopping-cart.html
Normal file
101
demos/droppable/shopping-cart.html
Normal file
@ -0,0 +1,101 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>jQuery UI Droppable - Shopping Cart Demo</title>
|
||||
<link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
|
||||
<script type="text/javascript" src="../../jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.mouse.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.draggable.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.droppable.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.sortable.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.accordion.js"></script>
|
||||
<link type="text/css" href="../demos.css" rel="stylesheet" />
|
||||
<style type="text/css">
|
||||
h1 { padding: .2em; margin: 0; }
|
||||
#products { float:left; width: 500px; margin-right: 2em; }
|
||||
#cart { width: 200px; float: left; }
|
||||
/* style the list to maximize the droppable hitarea */
|
||||
#cart ol { margin: 0; padding: 1em 0 1em 3em; }
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("#catalog").accordion();
|
||||
$("#catalog li").draggable({
|
||||
appendTo: "body",
|
||||
helper: "clone"
|
||||
});
|
||||
$("#cart ol").droppable({
|
||||
activeClass: "ui-state-default",
|
||||
hoverClass: "ui-state-hover",
|
||||
accept: ":not(.ui-sortable-helper)",
|
||||
drop: function(event, ui) {
|
||||
$(this).find(".placeholder").remove();
|
||||
$("<li></li>").text(ui.draggable.text()).appendTo(this);
|
||||
}
|
||||
}).sortable({
|
||||
items: "li:not(.placeholder)",
|
||||
sort: function() {
|
||||
// gets added unintentionally by droppable interacting with sortable
|
||||
// using connectWithSortable fixes this, but doesn't allow you to customize active/hoverClass options
|
||||
$(this).removeClass("ui-state-default");
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="demo">
|
||||
|
||||
<div id="products">
|
||||
<h1 class="ui-widget-header">Products</h1>
|
||||
<div id="catalog">
|
||||
<h3><a href="#">T-Shirts</a></h3>
|
||||
<div>
|
||||
<ul>
|
||||
<li>Lolcat Shirt</li>
|
||||
<li>Cheezeburger Shirt</li>
|
||||
<li>Buckit Shirt</li>
|
||||
</ul>
|
||||
</div>
|
||||
<h3><a href="#">Bags</a></h3>
|
||||
<div>
|
||||
<ul>
|
||||
<li>Zebra Striped</li>
|
||||
<li>Black Leather</li>
|
||||
<li>Alligator Leather</li>
|
||||
</ul>
|
||||
</div>
|
||||
<h3><a href="#">Gadgets</a></h3>
|
||||
<div>
|
||||
<ul>
|
||||
<li>iPhone</li>
|
||||
<li>iPod</li>
|
||||
<li>iPad</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="cart">
|
||||
<h1 class="ui-widget-header">Shopping Cart</h1>
|
||||
<div class="ui-widget-content">
|
||||
<ol>
|
||||
<li class="placeholder">Add your items here</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div><!-- End demo -->
|
||||
|
||||
<div class="demo-description">
|
||||
|
||||
<p>Demonstrate how to use an accordion to structure products into a catalog and make use drag and drop for adding
|
||||
them to a shopping cart, where they are sortable.</p>
|
||||
|
||||
</div><!-- End demo-description -->
|
||||
</body>
|
||||
</html>
|
@ -25,7 +25,6 @@
|
||||
<script type="text/javascript" src="../ui/jquery.ui.slider.js"></script>
|
||||
<script type="text/javascript" src="../ui/jquery.ui.sortable.js"></script>
|
||||
<script type="text/javascript" src="../ui/jquery.ui.tabs.js"></script>
|
||||
<script type="text/javascript" src="../ui/jquery.ui.tooltip.js"></script>
|
||||
<script type="text/javascript" src="../ui/jquery.effects.core.js"></script>
|
||||
<script type="text/javascript" src="../ui/jquery.effects.blind.js"></script>
|
||||
<script type="text/javascript" src="../ui/jquery.effects.bounce.js"></script>
|
||||
@ -269,7 +268,6 @@
|
||||
<dd><a href="progressbar/index.html">Progressbar</a></dd>
|
||||
<dd><a href="slider/index.html">Slider</a></dd>
|
||||
<dd><a href="tabs/index.html">Tabs</a></dd>
|
||||
<dd><a href="tooltip/index.html">Tooltip</a></dd>
|
||||
<dt>Effects</dt>
|
||||
<dd><a href="animate/index.html">Color Animation</a></dd>
|
||||
<dd><a href="toggleClass/index.html">Toggle Class</a></dd>
|
||||
|
57
demos/tabs/cookie.html
Normal file
57
demos/tabs/cookie.html
Normal file
@ -0,0 +1,57 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>jQuery UI Tabs - Default functionality</title>
|
||||
<link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
|
||||
<script type="text/javascript" src="../../jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="../../external/jquery.cookie.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.tabs.js"></script>
|
||||
<link type="text/css" href="../demos.css" rel="stylesheet" />
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("#tabs").tabs({
|
||||
cookie: {
|
||||
// store cookie for a day, without, it would be a session cookie
|
||||
expires: 1
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="demo">
|
||||
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#tabs-1">Nunc tincidunt</a></li>
|
||||
<li><a href="#tabs-2">Proin dolor</a></li>
|
||||
<li><a href="#tabs-3">Aenean lacinia</a></li>
|
||||
</ul>
|
||||
<div id="tabs-1">
|
||||
<p>Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin. Sed ut dolor nec orci tincidunt interdum. Phasellus ipsum. Nunc tristique tempus lectus.</p>
|
||||
</div>
|
||||
<div id="tabs-2">
|
||||
<p>Morbi tincidunt, dui sit amet facilisis feugiat, odio metus gravida ante, ut pharetra massa metus id nunc. Duis scelerisque molestie turpis. Sed fringilla, massa eget luctus malesuada, metus eros molestie lectus, ut tempus eros massa ut dolor. Aenean aliquet fringilla sem. Suspendisse sed ligula in ligula suscipit aliquam. Praesent in eros vestibulum mi adipiscing adipiscing. Morbi facilisis. Curabitur ornare consequat nunc. Aenean vel metus. Ut posuere viverra nulla. Aliquam erat volutpat. Pellentesque convallis. Maecenas feugiat, tellus pellentesque pretium posuere, felis lorem euismod felis, eu ornare leo nisi vel felis. Mauris consectetur tortor et purus.</p>
|
||||
</div>
|
||||
<div id="tabs-3">
|
||||
<p>Mauris eleifend est et turpis. Duis id erat. Suspendisse potenti. Aliquam vulputate, pede vel vehicula accumsan, mi neque rutrum erat, eu congue orci lorem eget lorem. Vestibulum non ante. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Fusce sodales. Quisque eu urna vel enim commodo pellentesque. Praesent eu risus hendrerit ligula tempus pretium. Curabitur lorem enim, pretium nec, feugiat nec, luctus a, lacus.</p>
|
||||
<p>Duis cursus. Maecenas ligula eros, blandit nec, pharetra at, semper at, magna. Nullam ac lacus. Nulla facilisi. Praesent viverra justo vitae neque. Praesent blandit adipiscing velit. Suspendisse potenti. Donec mattis, pede vel pharetra blandit, magna ligula faucibus eros, id euismod lacus dolor eget odio. Nam scelerisque. Donec non libero sed nulla mattis commodo. Ut sagittis. Donec nisi lectus, feugiat porttitor, tempor ac, tempor vitae, pede. Aenean vehicula velit eu tellus interdum rutrum. Maecenas commodo. Pellentesque nec elit. Fusce in lacus. Vivamus a libero vitae lectus hendrerit hendrerit.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div><!-- End demo -->
|
||||
|
||||
<div class="demo-description">
|
||||
|
||||
<p>Looks the same as the default demo, but uses cookie to store the selected tab, and restore it when the page (re)loads.
|
||||
|
||||
The cookie is stored for a day, so tabs will be restored even after closing the browser. Use cookie: {} for using cookies with default options.</p>
|
||||
|
||||
</div><!-- End demo-description -->
|
||||
|
||||
</body>
|
||||
</html>
|
@ -17,6 +17,7 @@
|
||||
<li><a href="sortable.html">Sortable</a></li>
|
||||
<li><a href="manipulation.html">Simple manipulation</a></li>
|
||||
<li><a href="bottom.html">Tabs below content</a></li>
|
||||
<li><a href="cookie.html">Cookie persistence</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
@ -1,48 +0,0 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI Tooltip - Default demo</title>
|
||||
<link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
|
||||
<script type="text/javascript" src="../../jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.tooltip.js"></script>
|
||||
<link type="text/css" href="../demos.css" rel="stylesheet" />
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("a, input").tooltip();
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
label { display: inline-block; width: 5em; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="demo">
|
||||
|
||||
<p><a href="#" title="That's what this widget is">Tooltips</a> can be attached to any element. When you hover
|
||||
the element with your mouse, the title attribute is displayed in a little box next to the element, just like a native tooltip.
|
||||
</p>
|
||||
<p>But as it's not a native tooltip, it can be styled. Any themes built with
|
||||
<a href="http://themeroller.com" title="ThemeRoller, jQuery UI's theme builder application">ThemeRoller</a>
|
||||
will also style tooltip's accordingly.</p>
|
||||
<p>Tooltip's are also useful for form elements, to show some additional information in the context of each field.</p>
|
||||
<p><label for="age">Your age:</label><input id="age" title="We ask for your age only for statistical purposes." /></p>
|
||||
<p>Click the field to see the tooltip; when you tab out of the field, it gets hidden.</p>
|
||||
|
||||
</div><!-- End demo -->
|
||||
|
||||
|
||||
|
||||
<div class="demo-description">
|
||||
|
||||
<p>Hover the links above or use the tab key to cycle the focus on each element.</p>
|
||||
|
||||
</div><!-- End demo-description -->
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
@ -1,69 +0,0 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI Tooltip - Default demo</title>
|
||||
<link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
|
||||
<script type="text/javascript" src="../../jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.tooltip.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.button.js"></script>
|
||||
<link type="text/css" href="../demos.css" rel="stylesheet" />
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("[title]").tooltip();
|
||||
$("<button/>").text("Show help").button().toggle(function() {
|
||||
$(":ui-tooltip").tooltip("open");
|
||||
}, function() {
|
||||
$(":ui-tooltip").tooltip("close");
|
||||
}).appendTo("form");
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
label { display: inline-block; width: 5em; }
|
||||
.ui-icon { display: inline-block; }
|
||||
fieldset div {
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
.ui-tooltip { width: 200px; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="demo">
|
||||
|
||||
<form>
|
||||
<fieldset>
|
||||
<div>
|
||||
<label for="firstname">Firstname</label>
|
||||
<input id="firstname" name="firstname" />
|
||||
<span title="Please provide your firstname." class="ui-state-default ui-corner-all ui-icon ui-icon-help">?</span>
|
||||
</div>
|
||||
<div>
|
||||
<label for="lastname">Lastname</label>
|
||||
<input id="lastname" name="lastname" />
|
||||
<span title="Please provide also your lastname." class="ui-state-default ui-corner-all ui-icon ui-icon-help">?</span>
|
||||
</div>
|
||||
<div>
|
||||
<label for="address">Address</label>
|
||||
<input id="address" name="address" />
|
||||
<span title="Your home or work address." class="ui-state-default ui-corner-all ui-icon ui-icon-help">?</span>
|
||||
</div>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
</div><!-- End demo -->
|
||||
|
||||
|
||||
|
||||
<div class="demo-description">
|
||||
|
||||
<p>Hover the questionmark-buttons or use the button below to display the help texts all at once. Click again to hide them.</p>
|
||||
|
||||
</div><!-- End demo-description -->
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
@ -1,21 +0,0 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI Tooltip Demos</title>
|
||||
<link type="text/css" href="../demos.css" rel="stylesheet" />
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="demos-nav">
|
||||
<h4>Examples</h4>
|
||||
<ul>
|
||||
<li class="demo-config-on"><a href="default.html">Default functionality</a></li>
|
||||
<!--
|
||||
<li><a href="foo.html">Foo</a></li>
|
||||
<li><a href="bar.html">Bar</a></li>
|
||||
-->
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -1,65 +0,0 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI Tooltip - Default demo</title>
|
||||
<link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
|
||||
<script type="text/javascript" src="../../jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.position.js"></script>
|
||||
<script type="text/javascript" src="../../ui/jquery.ui.tooltip.js"></script>
|
||||
<link type="text/css" href="../demos.css" rel="stylesheet" />
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("a, input").tooltip({
|
||||
open: function() {
|
||||
var tooltip = $(this).tooltip("widget");
|
||||
$(document).mousemove(function(event) {
|
||||
tooltip.position({
|
||||
my: "left center",
|
||||
at: "right center",
|
||||
offset: "25 25",
|
||||
of: event
|
||||
});
|
||||
})
|
||||
// trigger once to override element-relative positioning
|
||||
.mousemove();
|
||||
},
|
||||
close: function() {
|
||||
$(document).unbind("mousemove");
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
label { display: inline-block; width: 5em; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="demo">
|
||||
|
||||
<p><a href="#" title="That's what this widget is">Tooltips</a> can be attached to any element. When you hover
|
||||
the element with your mouse, the title attribute is displayed in a little box next to the element, just like a native tooltip.
|
||||
</p>
|
||||
<p>But as it's not a native tooltip, it can be styled. Any themes built with
|
||||
<a href="http://themeroller.com" title="ThemeRoller, jQuery UI's theme builder application">ThemeRoller</a>
|
||||
will also style tooltip's accordingly.</p>
|
||||
<p>Tooltip's are also useful for form elements, to show some additional information in the context of each field.</p>
|
||||
<p><label for="age">Your age:</label><input id="age" title="We ask for your age only for statistical purposes." /></p>
|
||||
<p>Click the field to see the tooltip; when you tab out of the field, it gets hidden.</p>
|
||||
|
||||
</div><!-- End demo -->
|
||||
|
||||
|
||||
|
||||
<div class="demo-description">
|
||||
|
||||
<p>Here the tooltips are positioned relative to the mouse, and follow the mouse while it moves above the element.</p>
|
||||
|
||||
</div><!-- End demo-description -->
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
12
external/qunit.js
vendored
12
external/qunit.js
vendored
@ -953,16 +953,14 @@ QUnit.jsDump = (function() {
|
||||
type = "date";
|
||||
} else if (QUnit.is("Function", obj)) {
|
||||
type = "function";
|
||||
} else if (QUnit.is("Array", obj)) {
|
||||
type = "array";
|
||||
} else if (QUnit.is("Window", obj) || QUnit.is("global", obj)) {
|
||||
} else if (obj.setInterval && obj.document && !obj.nodeType) {
|
||||
type = "window";
|
||||
} else if (QUnit.is("HTMLDocument", obj)) {
|
||||
} else if (obj.nodeType === 9) {
|
||||
type = "document";
|
||||
} else if (QUnit.is("HTMLCollection", obj) || QUnit.is("NodeList", obj)) {
|
||||
type = "nodelist";
|
||||
} else if (/^\[object HTML/.test(Object.prototype.toString.call( obj ))) {
|
||||
} else if (obj.nodeType) {
|
||||
type = "node";
|
||||
} else if (typeof obj === "object" && typeof obj.length === "number" && obj.length >= 0) {
|
||||
type = "array";
|
||||
} else {
|
||||
type = typeof obj;
|
||||
}
|
||||
|
@ -16,6 +16,20 @@
|
||||
<script type="text/javascript" src="../../jquery.simulate.js"></script>
|
||||
<script type="text/javascript" src="../testsuite.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$.ui.accordion.prototype.options.animated = false;
|
||||
|
||||
function state(accordion) {
|
||||
var args = $.makeArray(arguments).slice(1);
|
||||
var result = [];
|
||||
$.each(args, function(i, n) {
|
||||
result.push( accordion.find(".ui-accordion-content").eq(i).filter(function() {
|
||||
return $(this).css("display") != "none"
|
||||
}).length ? 1 : 0 );
|
||||
});
|
||||
same(args, result)
|
||||
}
|
||||
</script>
|
||||
<script type="text/javascript" src="accordion_core.js"></script>
|
||||
<script type="text/javascript" src="accordion_defaults.js"></script>
|
||||
<script type="text/javascript" src="accordion_events.js"></script>
|
||||
@ -25,7 +39,7 @@
|
||||
|
||||
<style>
|
||||
#main { font-size: 10pt; font-family: 'trebuchet ms', verdana, arial; }
|
||||
#navigation * { margin: 0; padding: 0; font-size: 12px; }
|
||||
#list, #list1 *, #navigation, #navigation * { margin: 0; padding: 0; font-size: 12px; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
@ -41,7 +55,7 @@
|
||||
<div>
|
||||
<div id="list1" class="foo">
|
||||
<a class="bar">There is one obvious advantage:</a>
|
||||
<div style="" class="foo">
|
||||
<div style="font-style: normal; " class="foo">
|
||||
<p>
|
||||
You've seen it coming!
|
||||
<br/>
|
||||
@ -51,7 +65,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<a class="bar">Now that you've got...</a>
|
||||
<div style="" class="foo">
|
||||
<div style="font-style: normal; " class="foo">
|
||||
<p>
|
||||
your bear, you have to admit it!
|
||||
<br/>
|
||||
@ -62,7 +76,7 @@
|
||||
</p>
|
||||
</div>
|
||||
<a class="bar">Rent one bear, ...</a>
|
||||
<div style="" class="foo">
|
||||
<div style="font-style: normal; " class="foo">
|
||||
<p>
|
||||
get two for three beer.
|
||||
</p>
|
||||
|
@ -5,17 +5,6 @@
|
||||
|
||||
(function($) {
|
||||
|
||||
$.ui.accordion.prototype.options.animated = false;
|
||||
|
||||
function state(accordion) {
|
||||
var args = $.makeArray(arguments).slice(1);
|
||||
var result = [];
|
||||
$.each(args, function(i, n) {
|
||||
result.push( accordion.find(".ui-accordion-content").eq(i).is(":visible") ? 1 : 0 );
|
||||
});
|
||||
same(args, result)
|
||||
}
|
||||
|
||||
module("accordion: core");
|
||||
|
||||
test("handle click on header-descendant", function() {
|
||||
|
@ -3,15 +3,6 @@
|
||||
*/
|
||||
(function($) {
|
||||
|
||||
function state(accordion) {
|
||||
var expected = $.makeArray(arguments).slice(1);
|
||||
var actual = [];
|
||||
$.each(expected, function(i, n) {
|
||||
actual.push( accordion.find(".ui-accordion-content").eq(i).is(":visible") ? 1 : 0 );
|
||||
});
|
||||
same(actual, expected)
|
||||
}
|
||||
|
||||
module("accordion: methods");
|
||||
|
||||
test("init", function() {
|
||||
@ -112,8 +103,7 @@ test("activate, string expression", function() {
|
||||
ac.accordion("activate", ":last");
|
||||
state(ac, 0, 0, 1);
|
||||
});
|
||||
//[ 0, 1, 1 ] result: [ 0, 0, 1 ]
|
||||
//[ 0, 1, 1] result: [ 0, 0, 1]
|
||||
|
||||
test("activate, jQuery or DOM element", function() {
|
||||
var ac = $('#list1').accordion({ active: $("#list1 a:last") });
|
||||
state(ac, 0, 0, 1);
|
||||
@ -124,7 +114,9 @@ test("activate, jQuery or DOM element", function() {
|
||||
});
|
||||
|
||||
test("resize", function() {
|
||||
var expected = $('#list1').accordion();
|
||||
var expected = $('#list1').parent().height(300).end().accordion({
|
||||
fillSpace: true
|
||||
});
|
||||
|
||||
var sizes = [];
|
||||
expected.find(".ui-accordion-content").each(function() {
|
||||
@ -138,10 +130,15 @@ test("resize", function() {
|
||||
expected.find(".ui-accordion-content").each(function() {
|
||||
sizes2.push($(this).outerHeight());
|
||||
});
|
||||
same(sizes, sizes2);
|
||||
same(sizes, [246, 246, 246]);
|
||||
|
||||
expected.find(".ui-accordion-content:first").height(500)
|
||||
var sizes3 = [];
|
||||
expected.parent().height(500);
|
||||
expected.accordion("resize");
|
||||
var sizes2 = [];
|
||||
expected.find(".ui-accordion-content").each(function() {
|
||||
sizes2.push($(this).outerHeight());
|
||||
});
|
||||
same(sizes2, [446, 446, 446]);
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
|
@ -3,16 +3,6 @@
|
||||
*/
|
||||
(function($) {
|
||||
|
||||
function state(accordion) {
|
||||
var expected = $.makeArray(arguments).slice(1);
|
||||
var actual = [];
|
||||
$.each(expected, function(i, n) {
|
||||
actual.push( accordion.find(".ui-accordion-content").eq(i).is(":visible") ? 1 : 0 );
|
||||
});
|
||||
same(actual, expected)
|
||||
}
|
||||
|
||||
|
||||
module("accordion: options");
|
||||
|
||||
test("{ active: first child }, default", function() {
|
||||
|
@ -12,7 +12,7 @@ module("autocomplete: events", {
|
||||
var data = ["c++", "java", "php", "coldfusion", "javascript", "asp", "ruby", "python", "c", "scala", "groovy", "haskell", "perl"];
|
||||
|
||||
test("all events", function() {
|
||||
expect(11);
|
||||
expect(12);
|
||||
var ac = $("#autocomplete").autocomplete({
|
||||
delay: 0,
|
||||
source: data,
|
||||
@ -34,21 +34,38 @@ test("all events", function() {
|
||||
same(event.type, "autocompleteselect");
|
||||
same(ui.item, {label:"java", value:"java"});
|
||||
},
|
||||
change: function(event) {
|
||||
change: function(event, ui) {
|
||||
same(event.type, "autocompletechange");
|
||||
same(ui.item, {label:"java", value:"java"});
|
||||
same( $(".ui-menu:visible").length, 0 );
|
||||
start();
|
||||
}
|
||||
});
|
||||
stop();
|
||||
ac.val("ja").keydown();
|
||||
ac.focus().val("ja").keydown();
|
||||
setTimeout(function() {
|
||||
same( $(".ui-menu:visible").length, 1 );
|
||||
ac.simulate("keydown", { keyCode: $.ui.keyCode.DOWN });
|
||||
ac.simulate("keydown", { keyCode: $.ui.keyCode.ENTER });
|
||||
start();
|
||||
ac.blur();
|
||||
}, 50);
|
||||
});
|
||||
|
||||
test("change without selection", function() {
|
||||
expect(2);
|
||||
stop();
|
||||
var ac = $("#autocomplete").autocomplete({
|
||||
delay: 0,
|
||||
source: data,
|
||||
change: function(event, ui) {
|
||||
same(event.type, "autocompletechange");
|
||||
same(ui.item, null);
|
||||
start();
|
||||
}
|
||||
});
|
||||
ac.focus().val("ja").blur();
|
||||
});
|
||||
|
||||
test("cancel search", function() {
|
||||
expect(6);
|
||||
var first = true;
|
||||
|
@ -120,7 +120,7 @@ function source_test(source, async) {
|
||||
}
|
||||
if (async) {
|
||||
stop();
|
||||
setTimeout(result, 100);
|
||||
$(document).one("ajaxStop", result);
|
||||
} else {
|
||||
result();
|
||||
}
|
||||
|
@ -15,12 +15,15 @@
|
||||
<script type="text/javascript" src="../../jquery.simulate.js"></script>
|
||||
<script type="text/javascript" src="../testsuite.js"></script>
|
||||
|
||||
<!--
|
||||
<script type="text/javascript" src="draggable_core.js"></script>
|
||||
<script type="text/javascript" src="draggable_defaults.js"></script>
|
||||
<script type="text/javascript" src="draggable_events.js"></script>
|
||||
<script type="text/javascript" src="draggable_methods.js"></script>
|
||||
<script type="text/javascript" src="draggable_options.js"></script>
|
||||
<script type="text/javascript" src="draggable_tickets.js"></script>
|
||||
-->
|
||||
<script type="text/javascript">test("draggable", function() { ok(true, "disabled draggable testsuite"); });</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
@ -16,12 +16,15 @@
|
||||
<script type="text/javascript" src="../../jquery.simulate.js"></script>
|
||||
<script type="text/javascript" src="../testsuite.js"></script>
|
||||
|
||||
<!--
|
||||
<script type="text/javascript" src="droppable_core.js"></script>
|
||||
<script type="text/javascript" src="droppable_defaults.js"></script>
|
||||
<script type="text/javascript" src="droppable_events.js"></script>
|
||||
<script type="text/javascript" src="droppable_methods.js"></script>
|
||||
<script type="text/javascript" src="droppable_options.js"></script>
|
||||
<script type="text/javascript" src="droppable_tickets.js"></script>
|
||||
-->
|
||||
<script type="text/javascript">test("droppable", function() { ok(true, "disabled droppable testsuite"); });</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
@ -17,12 +17,15 @@
|
||||
<script type="text/javascript" src="../../jquery.simulate.js"></script>
|
||||
<script type="text/javascript" src="../testsuite.js"></script>
|
||||
|
||||
<!--
|
||||
<script type="text/javascript" src="resizable_core.js"></script>
|
||||
<script type="text/javascript" src="resizable_defaults.js"></script>
|
||||
<script type="text/javascript" src="resizable_events.js"></script>
|
||||
<script type="text/javascript" src="resizable_methods.js"></script>
|
||||
<script type="text/javascript" src="resizable_options.js"></script>
|
||||
<script type="text/javascript" src="resizable_tickets.js"></script>
|
||||
-->
|
||||
<script type="text/javascript">test("resizable", function() { ok(true, "disabled resizable testsuite"); });</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
@ -15,12 +15,15 @@
|
||||
<script type="text/javascript" src="../../jquery.simulate.js"></script>
|
||||
<script type="text/javascript" src="../testsuite.js"></script>
|
||||
|
||||
<!--
|
||||
<script type="text/javascript" src="selectable_core.js"></script>
|
||||
<script type="text/javascript" src="selectable_defaults.js"></script>
|
||||
<script type="text/javascript" src="selectable_events.js"></script>
|
||||
<script type="text/javascript" src="selectable_methods.js"></script>
|
||||
<script type="text/javascript" src="selectable_options.js"></script>
|
||||
<script type="text/javascript" src="selectable_tickets.js"></script>
|
||||
-->
|
||||
<script type="text/javascript">test("selectable", function() { ok(true, "disabled selectable testsuite"); });</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
@ -88,17 +88,50 @@ test("range", function() {
|
||||
ok(false, "missing test - untested code is broken code.");
|
||||
});
|
||||
|
||||
//spec: http://wiki.jqueryui.com/Slider#specs
|
||||
// value option/method: the value option is not restricted by min/max/step.
|
||||
// What is returned by the value method is restricted by min (>=), max (<=), and step (even multiple)
|
||||
test("step", function() {
|
||||
var el = $('<div></div>').slider({
|
||||
step: 10
|
||||
min: 0,
|
||||
value: 0,
|
||||
step: 10,
|
||||
max: 100,
|
||||
});
|
||||
equals( el.slider("value"), 0 )
|
||||
equals( el.slider("value"), 0 );
|
||||
|
||||
el.slider("value", 1);
|
||||
equals( el.slider("value"), 0 );
|
||||
|
||||
el.slider("value", 9);
|
||||
equals( el.slider("value"), 10 );
|
||||
el.slider("value", 10);
|
||||
equals( el.slider("value"), 10 );
|
||||
|
||||
el.slider("value", 11);
|
||||
equals( el.slider("value"), 10 );
|
||||
|
||||
el.slider("value", 19);
|
||||
equals( el.slider("value"), 20 );
|
||||
|
||||
el = $('<div></div>').slider({
|
||||
min: 0,
|
||||
value: 0,
|
||||
step: 20,
|
||||
max: 100,
|
||||
});
|
||||
el.slider("value", 0);
|
||||
|
||||
el.slider("option", "value", 1);
|
||||
equals( el.slider("value"), 0 );
|
||||
|
||||
el.slider("option", "value", 9);
|
||||
equals( el.slider("value"), 0 );
|
||||
|
||||
el.slider("option", "value", 11);
|
||||
equals( el.slider("value"), 20 );
|
||||
|
||||
el.slider("option", "value", 19);
|
||||
equals( el.slider("value"), 20 );
|
||||
|
||||
el.slider('destroy');
|
||||
});
|
||||
|
||||
|
@ -15,12 +15,15 @@
|
||||
<script type="text/javascript" src="../../jquery.simulate.js"></script>
|
||||
<script type="text/javascript" src="../testsuite.js"></script>
|
||||
|
||||
<!--
|
||||
<script type="text/javascript" src="sortable_core.js"></script>
|
||||
<script type="text/javascript" src="sortable_defaults.js"></script>
|
||||
<script type="text/javascript" src="sortable_events.js"></script>
|
||||
<script type="text/javascript" src="sortable_methods.js"></script>
|
||||
<script type="text/javascript" src="sortable_options.js"></script>
|
||||
<script type="text/javascript" src="sortable_tickets.js"></script>
|
||||
-->
|
||||
<script type="text/javascript">test("sortable", function() { ok(true, "disabled sortable testsuite"); });</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
@ -35,19 +35,21 @@ test('ajax', function() {
|
||||
selected: 2,
|
||||
load: function() {
|
||||
// spinner: default spinner
|
||||
equals($('li:eq(2) > a > span', el).length, 1, "should restore tab markup after spinner is removed");
|
||||
equals($('li:eq(2) > a > span', el).html(), '3', "should restore tab label after spinner is removed");
|
||||
el.tabs('destroy');
|
||||
el.tabs({
|
||||
selected: 2,
|
||||
spinner: '<img src="spinner.gif" alt="">',
|
||||
load: function() {
|
||||
// spinner: image
|
||||
equals($('li:eq(2) > a > span', el).length, 1, "should restore tab markup after spinner is removed");
|
||||
equals($('li:eq(2) > a > span', el).html(), '3', "should restore tab label after spinner is removed");
|
||||
start();
|
||||
}
|
||||
});
|
||||
setTimeout(function() {
|
||||
equals($('li:eq(2) > a > span', el).length, 1, "should restore tab markup after spinner is removed");
|
||||
equals($('li:eq(2) > a > span', el).html(), '3', "should restore tab label after spinner is removed");
|
||||
el.tabs('destroy');
|
||||
el.tabs({
|
||||
selected: 2,
|
||||
spinner: '<img src="spinner.gif" alt="">',
|
||||
load: function() {
|
||||
// spinner: image
|
||||
equals($('li:eq(2) > a > span', el).length, 1, "should restore tab markup after spinner is removed");
|
||||
equals($('li:eq(2) > a > span', el).html(), '3', "should restore tab label after spinner is removed");
|
||||
start();
|
||||
}
|
||||
});
|
||||
}, 1);
|
||||
}
|
||||
});
|
||||
|
||||
|
552
tests/visual/button/button_performance.html
Normal file
552
tests/visual/button/button_performance.html
Normal file
@ -0,0 +1,552 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>Button Visual push: Default</title>
|
||||
<link rel="stylesheet" href="../visual.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
|
||||
<style type="text/css">
|
||||
#toolbar { margin-top: 2em; padding:0.2em; }
|
||||
#ops1, #ops2, #format, #mode { margin-right: 1em }
|
||||
</style>
|
||||
<script type="text/javascript" src="../../../jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="../../../external/jquery.metadata.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("button").button();
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
<button>Simple button, only text</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'},text:false}}">Button with icon only</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-locked'}}}">Button with icon on the left</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'}}}">Button with two icons</button>
|
||||
<button class="{button:{icons:{primary:'ui-icon-gear',secondary:'ui-icon-triangle-1-s'},text:false}}">Button with two icons</button>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -1,37 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>Compound Visual Test : Tabs in Tabs</title>
|
||||
<link rel="stylesheet" href="../visual.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
|
||||
<script type="text/javascript" src="../../../jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.tooltip.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.tabs.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("#tabs").tabs();
|
||||
$("a").tooltip();
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#tabs-1" title="first tab tooltip">First</a></li>
|
||||
<li><a href="#tabs-2" title="second tab tooltip">Second</a></li>
|
||||
</ul>
|
||||
<div id="tabs-1">
|
||||
<a href="#" title="title content">label</a>
|
||||
</div>
|
||||
<div id="tabs-2">
|
||||
<a href="#" title="other title content">other label</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -20,11 +20,8 @@
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.progressbar.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.slider.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.tabs.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.tooltip.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$("[title]").tooltip();
|
||||
|
||||
$("#accordion").accordion();
|
||||
$("#autocomplete").autocomplete({
|
||||
source: ["c++", "java", "php", "coldfusion", "javascript", "asp", "ruby", "python", "c", "scala", "groovy", "haskell", "perl"]
|
||||
@ -53,7 +50,7 @@
|
||||
width: 100,
|
||||
height: 75,
|
||||
modal: true
|
||||
});
|
||||
})
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
@ -79,11 +76,11 @@
|
||||
<input id="datepicker">
|
||||
<button>Another button</button>
|
||||
<div>
|
||||
<label for="progress">Progress: <input title="The progress we made so far" id="progress" /></label>
|
||||
<label for="progress">Progress: <input id="progress" /></label>
|
||||
</div>
|
||||
<div id="progressbar">
|
||||
</div>
|
||||
<div id="slider" title="Sliding progress..."></div>
|
||||
<div id="slider"></div>
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#tabs-1">First</a></li>
|
||||
|
@ -20,7 +20,6 @@
|
||||
<li><a href="compound/draggable_accordion.html">Draggable Accordion</a></li>
|
||||
<li><a href="compound/sortable_accordion_sortable_tabs.html">Accordion within Tabs, both Sortable</a></li>
|
||||
<li><a href="compound/tabs_tabs.html">Tabs contains Tabs</a></li>
|
||||
<li><a href="compound/tabs_tooltips.html">Tabs with Tooltips</a></li>
|
||||
<li><a href="compound/widgets_in_dialog.html">All Widgets within a Dialog</a></li>
|
||||
</ul>
|
||||
|
||||
@ -44,7 +43,6 @@
|
||||
<li><a href="progressbar/progressbar.html">Progressbar</a></li>
|
||||
<li><a href="slider/slider.html">Slider</a></li>
|
||||
<li><a href="tabs/tabs.html">Tabs</a></li>
|
||||
<li><a href="tooltip/tooltip.html">Tooltip</a></li>
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
|
@ -1,2 +0,0 @@
|
||||
<?php sleep(1); ?>
|
||||
<strong>Hello</strong> world!
|
@ -1,213 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>Tooltip Visual Test: Default</title>
|
||||
<link rel="stylesheet" href="../visual.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../../../themes/base/ui.all.css" type="text/css">
|
||||
<script type="text/javascript" src="../../../jquery-1.3.2.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.tooltip.js"></script>
|
||||
<script type="text/javascript">
|
||||
$.widget("ui.callout", {
|
||||
_init: function() {
|
||||
this.element.append('<div class="ui-tooltip-pointer ui-widget-content"><div class="ui-tooltip-pointer-inner" style="border-right-color:rgb(255, 255, 255)"></div></div>');
|
||||
},
|
||||
pointAt: function(target) {
|
||||
target = $(target);
|
||||
var tx = target.offset().left + target.width() / 2,
|
||||
ty = target.offset().top + target.height() / 2,
|
||||
dx = this.element.offset().left + this.element.width() / 2,
|
||||
dy = this.element.offset().top + this.element.height() / 2;
|
||||
function d(a, b) {
|
||||
return a > b ? a - b : b - a;
|
||||
}
|
||||
this.element.attr("class", this.element.attr("class").replace(/(.+)ui-tooltip-arrow-..(.+)?/, "$1 $2"));
|
||||
if (dx < tx && d(dx, tx) > d(dy, tx)) {
|
||||
this.element.addClass("ui-tooltip-arrow-rc");
|
||||
}
|
||||
if (dx > tx && d(dx, tx) > d(dy, ty)) {
|
||||
this.element.addClass("ui-tooltip-arrow-lc");
|
||||
}
|
||||
if (dy > ty && d(dx, tx) < d(dy, ty)) {
|
||||
this.element.addClass("ui-tooltip-arrow-tc");
|
||||
}
|
||||
if (dy < ty && d(dx, tx) < d(dy, ty)) {
|
||||
this.element.addClass("ui-tooltip-arrow-bc");
|
||||
}
|
||||
|
||||
// fix inner borders
|
||||
$('.ui-tooltip-pointer-inner', this.element).each(function(){
|
||||
var pt = $(this).parent().parent();
|
||||
var bColor = pt.css('backgroundColor');
|
||||
$(this).css({
|
||||
borderLeftColor: '',
|
||||
borderRightColor: '',
|
||||
borderTopColor: '',
|
||||
borderBottomColor: ''
|
||||
});
|
||||
if(pt.is('.ui-tooltip-arrow-rb,.ui-tooltip-arrow-rc,.ui-tooltip-arrow-rt')){ $(this).css('border-left-color', bColor); }
|
||||
else if(pt.is('.ui-tooltip-arrow-br,.ui-tooltip-arrow-bc,.ui-tooltip-arrow-bl')){ $(this).css('border-top-color', bColor); }
|
||||
else if(pt.is('.ui-tooltip-arrow-lb,.ui-tooltip-arrow-lc,.ui-tooltip-arrow-lt')){ $(this).css('border-right-color', bColor); }
|
||||
else { $(this).css('border-bottom-color', bColor); }
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
$(function() {
|
||||
$.ui.tooltip.prototype.options.show = function(event, ui) {
|
||||
$(this).tooltip("widget").callout("pointAt", ui.target);
|
||||
}
|
||||
|
||||
function enable() {
|
||||
// default
|
||||
$("#context1, form input").tooltip();
|
||||
|
||||
// custom class, replaces ui-widget-content
|
||||
$("#context2").tooltip({
|
||||
tooltipClass: "ui-widget-header"
|
||||
});
|
||||
$("#right1").tooltip({
|
||||
tooltipClass: "ui-state-error"
|
||||
});
|
||||
|
||||
// synchronous content
|
||||
$("#see-footnote").tooltip({
|
||||
content: function() {
|
||||
return $($(this).attr("href")).html();
|
||||
}
|
||||
});
|
||||
// asynchronous content
|
||||
$("#ajax").tooltip({
|
||||
content: function(response) {
|
||||
$.get("ajaxcontent.html", response);
|
||||
}
|
||||
});
|
||||
|
||||
// custom position
|
||||
$("#right2").tooltip({
|
||||
position: {
|
||||
my: "center top",
|
||||
at: "center bottom",
|
||||
offset: "0 10"
|
||||
},
|
||||
tooltipClass: "ui-state-highlight"
|
||||
});
|
||||
|
||||
$(".ui-tooltip").callout();
|
||||
}
|
||||
enable();
|
||||
|
||||
$("#disable").toggle(function() {
|
||||
$("*").tooltip("disable");
|
||||
}, function() {
|
||||
$("*").tooltip("enable");
|
||||
});
|
||||
$("#toggle").toggle(function() {
|
||||
$("*").tooltip("destroy");
|
||||
}, function() {
|
||||
enable();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.ui-tooltip .ui-tooltip-pointer,.ui-tooltip .ui-tooltip-pointer-inner { position:absolute; width:0; height:0; background:none; }
|
||||
|
||||
/*top*/
|
||||
.ui-tooltip-arrow-tr .ui-tooltip-pointer,.ui-tooltip-arrow-tc .ui-tooltip-pointer,.ui-tooltip-arrow-tl .ui-tooltip-pointer { top:-14px; border-top:0; border-bottom-width:14px; }
|
||||
.ui-tooltip-arrow-tr .ui-tooltip-pointer { border-left:18px dotted transparent; border-right:0; right:10px; }
|
||||
.ui-tooltip-arrow-tc .ui-tooltip-pointer { border-left:10px dotted transparent; border-right:10px dotted transparent; left:50%; margin-left:-10px; }
|
||||
.ui-tooltip-arrow-tl .ui-tooltip-pointer { border-left:0; border-right:18px dotted transparent; left:10px; }
|
||||
.ui-tooltip-arrow-tr .ui-tooltip-pointer-inner,.ui-tooltip-arrow-tc .ui-tooltip-pointer-inner,.ui-tooltip-arrow-tl .ui-tooltip-pointer-inner { border-bottom:10px solid #fff; bottom:-14px; }
|
||||
.ui-tooltip-arrow-tr .ui-tooltip-pointer-inner { border-left:12px dotted transparent; border-right:0; right:2px; }
|
||||
.ui-tooltip-arrow-tc .ui-tooltip-pointer-inner { border-left:8px dotted transparent; border-right:8px dotted transparent; left:-8px; }
|
||||
.ui-tooltip-arrow-tl .ui-tooltip-pointer-inner { border-left:0; border-right:12px dotted transparent; left:2px; }
|
||||
|
||||
/*right*/
|
||||
.ui-tooltip-arrow-rb .ui-tooltip-pointer,.ui-tooltip-arrow-rc .ui-tooltip-pointer,.ui-tooltip-arrow-rt .ui-tooltip-pointer { right:-14px; border-right:0; border-left-width:14px; }
|
||||
.ui-tooltip-arrow-rb .ui-tooltip-pointer { border-bottom:0; border-top:18px dotted transparent; bottom:10px; }
|
||||
.ui-tooltip-arrow-rc .ui-tooltip-pointer { border-bottom:10px dotted transparent; border-top:10px dotted transparent; bottom:50%; margin-bottom:-10px; }
|
||||
.ui-tooltip-arrow-rt .ui-tooltip-pointer { border-bottom:18px dotted transparent; border-top:0; top:10px; }
|
||||
.ui-tooltip-arrow-rb .ui-tooltip-pointer-inner,.ui-tooltip-arrow-rc .ui-tooltip-pointer-inner,.ui-tooltip-arrow-rt .ui-tooltip-pointer-inner { border-left:10px solid #fff; left:-14px; }
|
||||
.ui-tooltip-arrow-rb .ui-tooltip-pointer-inner { border-bottom:0; border-top:12px dotted transparent; bottom:2px; }
|
||||
.ui-tooltip-arrow-rc .ui-tooltip-pointer-inner { border-bottom:8px dotted transparent; border-top:8px dotted transparent; bottom:-8px; }
|
||||
.ui-tooltip-arrow-rt .ui-tooltip-pointer-inner { border-bottom:12px dotted transparent; border-top:0; top:2px; }
|
||||
|
||||
/*bottom*/
|
||||
.ui-tooltip-arrow-br .ui-tooltip-pointer,.ui-tooltip-arrow-bc .ui-tooltip-pointer,.ui-tooltip-arrow-bl .ui-tooltip-pointer { bottom:-14px; border-bottom:0; border-top-width:14px; }
|
||||
.ui-tooltip-arrow-br .ui-tooltip-pointer { border-left:18px dotted transparent; border-right:0; right:10px; }
|
||||
.ui-tooltip-arrow-bc .ui-tooltip-pointer { border-left:10px dotted transparent; border-right:10px dotted transparent; left:50%; margin-left:-10px; }
|
||||
.ui-tooltip-arrow-bl .ui-tooltip-pointer { border-left:0; border-right:18px dotted transparent; left:10px; }
|
||||
.ui-tooltip-arrow-br .ui-tooltip-pointer-inner,.ui-tooltip-arrow-bc .ui-tooltip-pointer-inner,.ui-tooltip-arrow-bl .ui-tooltip-pointer-inner { border-top:10px solid #fff; top:-14px; }
|
||||
.ui-tooltip-arrow-br .ui-tooltip-pointer-inner { border-left:12px dotted transparent; border-right:0; right:2px; }
|
||||
.ui-tooltip-arrow-bc .ui-tooltip-pointer-inner { border-left:8px dotted transparent; border-right:8px dotted transparent; left:-8px; }
|
||||
.ui-tooltip-arrow-bl .ui-tooltip-pointer-inner { border-left:0; border-right:12px dotted transparent; left:2px; }
|
||||
|
||||
/*left*/
|
||||
.ui-tooltip-arrow-lb .ui-tooltip-pointer,.ui-tooltip-arrow-lc .ui-tooltip-pointer,.ui-tooltip-arrow-lt .ui-tooltip-pointer { left:-14px; border-left:0; border-right-width:14px; }
|
||||
.ui-tooltip-arrow-lb .ui-tooltip-pointer { border-bottom:0; border-top:18px dotted transparent; bottom:10px; }
|
||||
.ui-tooltip-arrow-lc .ui-tooltip-pointer { border-bottom:10px dotted transparent; border-top:10px dotted transparent; bottom:50%; margin-bottom:-10px; }
|
||||
.ui-tooltip-arrow-lt .ui-tooltip-pointer { border-bottom:18px dotted transparent; border-top:0; top:10px; }
|
||||
.ui-tooltip-arrow-lb .ui-tooltip-pointer-inner,.ui-tooltip-arrow-lc .ui-tooltip-pointer-inner,.ui-tooltip-arrow-lt .ui-tooltip-pointer-inner { border-right:10px solid #fff; right:-14px; }
|
||||
.ui-tooltip-arrow-lb .ui-tooltip-pointer-inner { border-bottom:0; border-top:12px dotted transparent; bottom:2px; }
|
||||
.ui-tooltip-arrow-lc .ui-tooltip-pointer-inner { border-bottom:8px dotted transparent; border-top:8px dotted transparent; bottom:-8px; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div style="width:300px">
|
||||
<ul id="context1" class="ui-widget ui-widget-header">
|
||||
<li><a href="#" title="Tooltip text 1">Anchor 1</a></li>
|
||||
<li><a href="#" title="Tooltip text 2">Anchor 2</a></li>
|
||||
<li><a href="#" title="Tooltip text 3">Anchor 3</a></li>
|
||||
<li><a href="#" title="Tooltip text 4 more Tooltip text Tooltip text ">Anchor 4</a></li>
|
||||
<li><a href="#" title="Tooltip text 5 more Tooltip text Tooltip text ">Anchor 5</a></li>
|
||||
<li><a href="#" title="Tooltip text 6 more Tooltip text Tooltip text ">Anchor 6</a></li>
|
||||
</ul>
|
||||
|
||||
<div id="right1" style="position: absolute; right: 1em" title="right aligned element">
|
||||
collision detection should kick in around here
|
||||
</div>
|
||||
|
||||
<div style="margin: 2em 0">
|
||||
<a id="see-footnote" href="#footnote">I'm a link to a footnote.</a>
|
||||
</div>
|
||||
|
||||
<div id="right2" style="position: absolute; right: 1em" title="right aligned element with custom position">
|
||||
right aligned with custom position
|
||||
</div>
|
||||
|
||||
<div id="ajax" style="width: 100px;" class="ui-widget-content" title="never be seen">
|
||||
gets its content via ajax
|
||||
</div>
|
||||
|
||||
<div id="context2" class="ui-widget ui-widget-content">
|
||||
<span title="something" style="border:1px solid blue">span</span>
|
||||
<div title="something else" style="border:1px solid red;">
|
||||
div
|
||||
<span title="something more" style="border:1px solid green;">nested span</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form style="margin: 2em 0;">
|
||||
<div>
|
||||
<label for="first">First Name:</label>
|
||||
<input id="first" title="Your first name is optional" />
|
||||
</div>
|
||||
<div>
|
||||
<label for="last">Last Name:</label>
|
||||
<input id="last" title="Your last name is optional" />
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div id="footnote">This is <strong>the</strong> footnote, including other elements</div>
|
||||
|
||||
<button id="disable">Toggle disabled</button>
|
||||
<button id="toggle">Toggle widget</button>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
@ -1,149 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>Tooltip Visual Test: Default</title>
|
||||
<link rel="stylesheet" href="../visual.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../../../themes/base/jquery.ui.all.css" type="text/css">
|
||||
<script type="text/javascript" src="../../../jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.widget.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.position.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.button.js"></script>
|
||||
<script type="text/javascript" src="../../../ui/jquery.ui.tooltip.js"></script>
|
||||
<script type="text/javascript" src="http://jqueryui.com/themeroller/themeswitchertool/"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$.fn.themeswitcher && $('<div/>').css({
|
||||
position: "absolute",
|
||||
right: 10,
|
||||
top: 10
|
||||
}).appendTo(document.body).themeswitcher();
|
||||
|
||||
function enable() {
|
||||
// default
|
||||
$("#context1 a, form input, #childish").tooltip();
|
||||
|
||||
// custom class, replaces ui-widget-content
|
||||
$("#context2 [title]").tooltip({
|
||||
tooltipClass: "ui-widget-header"
|
||||
});
|
||||
$("#right1").tooltip({
|
||||
tooltipClass: "ui-state-error"
|
||||
});
|
||||
|
||||
// synchronous content
|
||||
$("#see-footnote").tooltip({
|
||||
content: function() {
|
||||
return $($(this).attr("href")).html();
|
||||
}
|
||||
});
|
||||
// asynchronous content
|
||||
$("#ajax").tooltip({
|
||||
content: function(response) {
|
||||
$.get("ajaxcontent.php", response);
|
||||
return "Loading...";
|
||||
}
|
||||
});
|
||||
|
||||
// custom position
|
||||
$("#right2").tooltip({
|
||||
position: {
|
||||
my: "center top",
|
||||
at: "center bottom",
|
||||
offset: "0 10"
|
||||
},
|
||||
tooltipClass: "ui-state-highlight"
|
||||
});
|
||||
|
||||
$("#button1").button().tooltip();
|
||||
$("#button2").button({
|
||||
icons: {
|
||||
primary: "ui-icon-wrench"
|
||||
}
|
||||
}).tooltip();
|
||||
$("#button3").button({
|
||||
icons: {
|
||||
primary: "ui-icon-wrench"
|
||||
},
|
||||
text: false
|
||||
}).tooltip();
|
||||
}
|
||||
enable();
|
||||
|
||||
$("#disable").toggle(function() {
|
||||
$("*").tooltip("disable");
|
||||
}, function() {
|
||||
$("*").tooltip("enable");
|
||||
});
|
||||
$("#toggle").toggle(function() {
|
||||
$("*").tooltip("destroy");
|
||||
}, function() {
|
||||
enable();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div style="width:300px">
|
||||
<ul id="context1" class="ui-widget ui-widget-header">
|
||||
<li><a href="#" title="Tooltip text 1">Anchor 1</a></li>
|
||||
<li><a href="#" title="Tooltip text 2">Anchor 2</a></li>
|
||||
<li><a href="#" title="Tooltip text 3">Anchor 3</a></li>
|
||||
<li><a href="#" title="Tooltip text 4 more Tooltip text Tooltip text ">Anchor 4</a></li>
|
||||
<li><a href="#" title="Tooltip text 5 more Tooltip text Tooltip text ">Anchor 5</a></li>
|
||||
<li><a href="#" title="Tooltip text 6 more Tooltip text Tooltip text ">Anchor 6</a></li>
|
||||
</ul>
|
||||
|
||||
<div id="right1" style="position: absolute; right: 1em" title="right aligned element">
|
||||
collision detection should kick in around here
|
||||
</div>
|
||||
|
||||
<div style="margin: 2em 0">
|
||||
<a id="see-footnote" href="#footnote">I'm a link to a footnote.</a>
|
||||
</div>
|
||||
|
||||
<div id="right2" style="position: absolute; right: 1em" title="right aligned element with custom position">
|
||||
right aligned with custom position
|
||||
</div>
|
||||
|
||||
<div id="ajax" style="width: 100px;" class="ui-widget-content" title="never be seen">
|
||||
gets its content via ajax
|
||||
</div>
|
||||
|
||||
<div id="context2" class="ui-widget ui-widget-content">
|
||||
<span title="something" style="border:1px solid blue">span</span>
|
||||
<div title="something else" style="border:1px solid red;">
|
||||
div
|
||||
<span title="something more" style="border:1px solid green;">nested span</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="childish" class="ui-widget ui-widget-content" style="margin: 2em 0; border: 1px solid black;" title="element with child elements">
|
||||
Text in <strong>bold</strong>.
|
||||
</div>
|
||||
|
||||
<form style="margin: 2em 0;">
|
||||
<div>
|
||||
<label for="first">First Name:</label>
|
||||
<input id="first" title="Your first name is optional" />
|
||||
</div>
|
||||
<div>
|
||||
<label for="last">Last Name:</label>
|
||||
<input id="last" title="Your last name is optional" />
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<button id="button1" title="Button Tooltip">Button Label</button>
|
||||
<button id="button2" title="Icon Button">Button with Icon</button>
|
||||
<button id="button3">Icon Only Button</button>
|
||||
|
||||
<div id="footnote">This is <strong>the</strong> footnote, including other elements</div>
|
||||
|
||||
<button id="disable">Toggle disabled</button>
|
||||
<button id="toggle">Toggle widget</button>
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
1
themes/base/jquery.ui.autocomplete.css
vendored
1
themes/base/jquery.ui.autocomplete.css
vendored
@ -34,5 +34,6 @@
|
||||
}
|
||||
.ui-menu .ui-menu-item a.ui-state-hover,
|
||||
.ui-menu .ui-menu-item a.ui-state-active {
|
||||
font-weight: normal;
|
||||
margin: -1px;
|
||||
}
|
||||
|
1
themes/base/jquery.ui.base.css
vendored
1
themes/base/jquery.ui.base.css
vendored
@ -9,4 +9,3 @@
|
||||
@import url("jquery.ui.resizable.css");
|
||||
@import url("jquery.ui.slider.css");
|
||||
@import url("jquery.ui.tabs.css");
|
||||
@import url("jquery.ui.tooltip.css");
|
||||
|
2
themes/base/jquery.ui.tabs.css
vendored
2
themes/base/jquery.ui.tabs.css
vendored
@ -7,5 +7,5 @@
|
||||
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
|
||||
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
|
||||
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
||||
.ui-tabs .ui-tabs-panel { display: block; border: 0; padding: 1em 1.4em; background: none; }
|
||||
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
|
||||
.ui-tabs .ui-tabs-hide { display: none !important; }
|
||||
|
14
themes/base/jquery.ui.tooltip.css
vendored
14
themes/base/jquery.ui.tooltip.css
vendored
@ -1,14 +0,0 @@
|
||||
/* Tooltip
|
||||
----------------------------------*/
|
||||
.ui-tooltip {
|
||||
padding:8px; width:100px; position:absolute; z-index:9999;
|
||||
-o-box-shadow: 0 0 5px #aaa;
|
||||
-moz-box-shadow: 0 0 5px #aaa;
|
||||
-webkit-box-shadow: 0 0 5px #aaa;
|
||||
box-shadow: 0 0 5px #aaa;
|
||||
}
|
||||
/* Fades and background-images don't work well together in IE6, drop the image */
|
||||
* html .ui-tooltip {
|
||||
background-image: none;
|
||||
}
|
||||
body .ui-tooltip { border-width:2px; }
|
2
ui/i18n/jquery.ui.datepicker-pl.js
vendored
2
ui/i18n/jquery.ui.datepicker-pl.js
vendored
@ -10,7 +10,7 @@ jQuery(function($){
|
||||
'Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień'],
|
||||
monthNamesShort: ['Sty','Lu','Mar','Kw','Maj','Cze',
|
||||
'Lip','Sie','Wrz','Pa','Lis','Gru'],
|
||||
dayNames: ['Niedziela','Poniedzialek','Wtorek','Środa','Czwartek','Piątek','Sobota'],
|
||||
dayNames: ['Niedziela','Poniedziałek','Wtorek','Środa','Czwartek','Piątek','Sobota'],
|
||||
dayNamesShort: ['Nie','Pn','Wt','Śr','Czw','Pt','So'],
|
||||
dayNamesMin: ['N','Pn','Wt','Śr','Cz','Pt','So'],
|
||||
weekHeader: 'Tydz',
|
||||
|
4
ui/jquery.ui.accordion.js
vendored
4
ui/jquery.ui.accordion.js
vendored
@ -140,9 +140,9 @@ $.widget("ui.accordion", {
|
||||
this.headers
|
||||
.unbind(".accordion")
|
||||
.removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-corner-top")
|
||||
.removeAttr("role").removeAttr("aria-expanded").removeAttr("tabindex");
|
||||
.removeAttr("role").removeAttr("aria-expanded").removeAttr("tabIndex");
|
||||
|
||||
this.headers.find("a").removeAttr("tabindex");
|
||||
this.headers.find("a").removeAttr("tabIndex");
|
||||
this._destroyIcons();
|
||||
var contents = this.headers.next().css("display", "").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active");
|
||||
if (o.autoHeight || o.fillHeight) {
|
||||
|
11
ui/jquery.ui.autocomplete.js
vendored
11
ui/jquery.ui.autocomplete.js
vendored
@ -83,6 +83,7 @@ $.widget( "ui.autocomplete", {
|
||||
}
|
||||
})
|
||||
.bind( "focus.autocomplete", function() {
|
||||
self.selectedItem = null;
|
||||
self.previous = self.element.val();
|
||||
})
|
||||
.bind( "blur.autocomplete", function( event ) {
|
||||
@ -91,6 +92,7 @@ $.widget( "ui.autocomplete", {
|
||||
// TODO try to implement this without a timeout, see clearTimeout in search()
|
||||
self.closing = setTimeout(function() {
|
||||
self.close( event );
|
||||
self._change( event );
|
||||
}, 150 );
|
||||
});
|
||||
this._initSource();
|
||||
@ -116,11 +118,13 @@ $.widget( "ui.autocomplete", {
|
||||
self.element.val( item.value );
|
||||
}
|
||||
self.close( event );
|
||||
self.previous = self.element.val();
|
||||
// only trigger when focus was lost (click on menu)
|
||||
var previous = self.previous;
|
||||
if ( self.element[0] !== doc.activeElement ) {
|
||||
self.element.focus();
|
||||
self.previous = previous;
|
||||
}
|
||||
self.selectedItem = item;
|
||||
},
|
||||
blur: function( event, ui ) {
|
||||
if ( self.menu.element.is(":visible") ) {
|
||||
@ -219,8 +223,11 @@ $.widget( "ui.autocomplete", {
|
||||
this.menu.element.hide();
|
||||
this.menu.deactivate();
|
||||
}
|
||||
},
|
||||
|
||||
_change: function( event ) {
|
||||
if ( this.previous !== this.element.val() ) {
|
||||
this._trigger( "change", event );
|
||||
this._trigger( "change", event, { item: this.selectedItem } );
|
||||
}
|
||||
},
|
||||
|
||||
|
6
ui/jquery.ui.core.js
vendored
6
ui/jquery.ui.core.js
vendored
@ -118,15 +118,13 @@ $.fn.extend({
|
||||
enableSelection: function() {
|
||||
return this
|
||||
.attr('unselectable', 'off')
|
||||
.css('MozUserSelect', '')
|
||||
.unbind('selectstart.ui');
|
||||
.css('MozUserSelect', '');
|
||||
},
|
||||
|
||||
disableSelection: function() {
|
||||
return this
|
||||
.attr('unselectable', 'on')
|
||||
.css('MozUserSelect', 'none')
|
||||
.bind('selectstart.ui', function() { return false; });
|
||||
.css('MozUserSelect', 'none');
|
||||
},
|
||||
|
||||
scrollParent: function() {
|
||||
|
713
ui/jquery.ui.slider.js
vendored
713
ui/jquery.ui.slider.js
vendored
@ -13,28 +13,32 @@
|
||||
* jquery.ui.widget.js
|
||||
*/
|
||||
|
||||
(function($) {
|
||||
(function( $ ) {
|
||||
|
||||
// number of pages in a slider
|
||||
// (how many times can you page up/down to go through the whole range)
|
||||
var numPages = 5;
|
||||
|
||||
$.widget("ui.slider", $.ui.mouse, {
|
||||
$.widget( "ui.slider", $.ui.mouse, {
|
||||
|
||||
widgetEventPrefix: "slide",
|
||||
|
||||
options: {
|
||||
animate: false,
|
||||
distance: 0,
|
||||
max: 100,
|
||||
min: 0,
|
||||
orientation: 'horizontal',
|
||||
orientation: "horizontal",
|
||||
range: false,
|
||||
step: 1,
|
||||
value: 0,
|
||||
values: null
|
||||
},
|
||||
_create: function() {
|
||||
|
||||
var self = this, o = this.options;
|
||||
_create: function() {
|
||||
var self = this,
|
||||
o = this.options;
|
||||
|
||||
this._keySliding = false;
|
||||
this._mouseSliding = false;
|
||||
this._animateOff = true;
|
||||
@ -43,197 +47,218 @@ $.widget("ui.slider", $.ui.mouse, {
|
||||
this._mouseInit();
|
||||
|
||||
this.element
|
||||
.addClass("ui-slider"
|
||||
+ " ui-slider-" + this.orientation
|
||||
+ " ui-widget"
|
||||
+ " ui-widget-content"
|
||||
+ " ui-corner-all");
|
||||
.addClass( "ui-slider" +
|
||||
" ui-slider-" + this.orientation +
|
||||
" ui-widget" +
|
||||
" ui-widget-content" +
|
||||
" ui-corner-all" );
|
||||
|
||||
if (o.disabled) {
|
||||
this.element.addClass('ui-slider-disabled ui-disabled');
|
||||
if ( o.disabled ) {
|
||||
this.element.addClass( "ui-slider-disabled ui-disabled" );
|
||||
}
|
||||
|
||||
this.range = $([]);
|
||||
|
||||
if (o.range) {
|
||||
|
||||
if (o.range === true) {
|
||||
this.range = $('<div></div>');
|
||||
if (!o.values) o.values = [this._valueMin(), this._valueMin()];
|
||||
if (o.values.length && o.values.length != 2) {
|
||||
o.values = [o.values[0], o.values[0]];
|
||||
if ( o.range ) {
|
||||
if ( o.range === true ) {
|
||||
this.range = $( "<div></div>" );
|
||||
if ( !o.values ) {
|
||||
o.values = [ this._valueMin(), this._valueMin() ];
|
||||
}
|
||||
if ( o.values.length && o.values.length !== 2 ) {
|
||||
o.values = [ o.values[0], o.values[0] ];
|
||||
}
|
||||
} else {
|
||||
this.range = $('<div></div>');
|
||||
this.range = $( "<div></div>" );
|
||||
}
|
||||
|
||||
this.range
|
||||
.appendTo(this.element)
|
||||
.addClass("ui-slider-range");
|
||||
.appendTo( this.element )
|
||||
.addClass( "ui-slider-range" );
|
||||
|
||||
if (o.range == "min" || o.range == "max") {
|
||||
this.range.addClass("ui-slider-range-" + o.range);
|
||||
if ( o.range === "min" || o.range === "max" ) {
|
||||
this.range.addClass( "ui-slider-range-" + o.range );
|
||||
}
|
||||
|
||||
// note: this isn't the most fittingly semantic framework class for this element,
|
||||
// but worked best visually with a variety of themes
|
||||
this.range.addClass("ui-widget-header");
|
||||
|
||||
this.range.addClass( "ui-widget-header" );
|
||||
}
|
||||
|
||||
if ($(".ui-slider-handle", this.element).length == 0)
|
||||
$('<a href="#"></a>')
|
||||
.appendTo(this.element)
|
||||
.addClass("ui-slider-handle");
|
||||
|
||||
if (o.values && o.values.length) {
|
||||
while ($(".ui-slider-handle", this.element).length < o.values.length)
|
||||
$('<a href="#"></a>')
|
||||
.appendTo(this.element)
|
||||
.addClass("ui-slider-handle");
|
||||
if ( $( ".ui-slider-handle", this.element ).length === 0 ) {
|
||||
$( "<a href='#'></a>" )
|
||||
.appendTo( this.element )
|
||||
.addClass( "ui-slider-handle" );
|
||||
}
|
||||
|
||||
this.handles = $(".ui-slider-handle", this.element)
|
||||
.addClass("ui-state-default"
|
||||
+ " ui-corner-all");
|
||||
if ( o.values && o.values.length ) {
|
||||
while ( $(".ui-slider-handle", this.element).length < o.values.length ) {
|
||||
$( "<a href='#'></a>" )
|
||||
.appendTo( this.element )
|
||||
.addClass( "ui-slider-handle" );
|
||||
}
|
||||
}
|
||||
|
||||
this.handle = this.handles.eq(0);
|
||||
this.handles = $( ".ui-slider-handle", this.element )
|
||||
.addClass( "ui-state-default" +
|
||||
" ui-corner-all" );
|
||||
|
||||
this.handles.add(this.range).filter("a")
|
||||
.click(function(event) {
|
||||
this.handle = this.handles.eq( 0 );
|
||||
|
||||
this.handles.add( this.range ).filter( "a" )
|
||||
.click(function( event ) {
|
||||
event.preventDefault();
|
||||
})
|
||||
.hover(function() {
|
||||
if (!o.disabled) {
|
||||
$(this).addClass('ui-state-hover');
|
||||
if ( !o.disabled ) {
|
||||
$( this ).addClass( "ui-state-hover" );
|
||||
}
|
||||
}, function() {
|
||||
$(this).removeClass('ui-state-hover');
|
||||
$( this ).removeClass( "ui-state-hover" );
|
||||
})
|
||||
.focus(function() {
|
||||
if (!o.disabled) {
|
||||
$(".ui-slider .ui-state-focus").removeClass('ui-state-focus'); $(this).addClass('ui-state-focus');
|
||||
if ( !o.disabled ) {
|
||||
$( ".ui-slider .ui-state-focus" ).removeClass( "ui-state-focus" );
|
||||
$( this ).addClass( "ui-state-focus" );
|
||||
} else {
|
||||
$(this).blur();
|
||||
$( this ).blur();
|
||||
}
|
||||
})
|
||||
.blur(function() {
|
||||
$(this).removeClass('ui-state-focus');
|
||||
$( this ).removeClass( "ui-state-focus" );
|
||||
});
|
||||
|
||||
this.handles.each(function(i) {
|
||||
$(this).data("index.ui-slider-handle", i);
|
||||
this.handles.each(function( i ) {
|
||||
$( this ).data( "index.ui-slider-handle", i );
|
||||
});
|
||||
|
||||
this.handles.keydown(function(event) {
|
||||
this.handles
|
||||
.keydown(function( event ) {
|
||||
var ret = true,
|
||||
index = $( this ).data( "index.ui-slider-handle" ),
|
||||
allowed,
|
||||
curVal,
|
||||
newVal,
|
||||
step;
|
||||
|
||||
var ret = true;
|
||||
if ( self.options.disabled ) {
|
||||
return;
|
||||
}
|
||||
|
||||
var index = $(this).data("index.ui-slider-handle");
|
||||
switch ( event.keyCode ) {
|
||||
case $.ui.keyCode.HOME:
|
||||
case $.ui.keyCode.END:
|
||||
case $.ui.keyCode.PAGE_UP:
|
||||
case $.ui.keyCode.PAGE_DOWN:
|
||||
case $.ui.keyCode.UP:
|
||||
case $.ui.keyCode.RIGHT:
|
||||
case $.ui.keyCode.DOWN:
|
||||
case $.ui.keyCode.LEFT:
|
||||
ret = false;
|
||||
if ( !self._keySliding ) {
|
||||
self._keySliding = true;
|
||||
$( this ).addClass( "ui-state-active" );
|
||||
allowed = self._start( event, index );
|
||||
if ( allowed === false ) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
if (self.options.disabled)
|
||||
return;
|
||||
step = self.options.step;
|
||||
if ( self.options.values && self.options.values.length ) {
|
||||
curVal = newVal = self.values( index );
|
||||
} else {
|
||||
curVal = newVal = self.value();
|
||||
}
|
||||
|
||||
switch (event.keyCode) {
|
||||
case $.ui.keyCode.HOME:
|
||||
case $.ui.keyCode.END:
|
||||
case $.ui.keyCode.PAGE_UP:
|
||||
case $.ui.keyCode.PAGE_DOWN:
|
||||
case $.ui.keyCode.UP:
|
||||
case $.ui.keyCode.RIGHT:
|
||||
case $.ui.keyCode.DOWN:
|
||||
case $.ui.keyCode.LEFT:
|
||||
ret = false;
|
||||
if (!self._keySliding) {
|
||||
self._keySliding = true;
|
||||
$(this).addClass("ui-state-active");
|
||||
self._start(event, index);
|
||||
}
|
||||
break;
|
||||
}
|
||||
switch ( event.keyCode ) {
|
||||
case $.ui.keyCode.HOME:
|
||||
newVal = self._valueMin();
|
||||
break;
|
||||
case $.ui.keyCode.END:
|
||||
newVal = self._valueMax();
|
||||
break;
|
||||
case $.ui.keyCode.PAGE_UP:
|
||||
newVal = curVal + ( (self._valueMax() - self._valueMin()) / numPages );
|
||||
break;
|
||||
case $.ui.keyCode.PAGE_DOWN:
|
||||
newVal = curVal - ( (self._valueMax() - self._valueMin()) / numPages );
|
||||
break;
|
||||
case $.ui.keyCode.UP:
|
||||
case $.ui.keyCode.RIGHT:
|
||||
if ( curVal === self._valueMax() ) {
|
||||
return;
|
||||
}
|
||||
newVal = curVal + step;
|
||||
break;
|
||||
case $.ui.keyCode.DOWN:
|
||||
case $.ui.keyCode.LEFT:
|
||||
if ( curVal === self._valueMin() ) {
|
||||
return;
|
||||
}
|
||||
newVal = curVal - step;
|
||||
break;
|
||||
}
|
||||
|
||||
var curVal, newVal, step = self.options.step;
|
||||
if (self.options.values && self.options.values.length) {
|
||||
curVal = newVal = self.values(index);
|
||||
} else {
|
||||
curVal = newVal = self.value();
|
||||
}
|
||||
self._slide( event, index, newVal );
|
||||
|
||||
switch (event.keyCode) {
|
||||
case $.ui.keyCode.HOME:
|
||||
newVal = self._valueMin();
|
||||
break;
|
||||
case $.ui.keyCode.END:
|
||||
newVal = self._valueMax();
|
||||
break;
|
||||
case $.ui.keyCode.PAGE_UP:
|
||||
newVal = curVal + ((self._valueMax() - self._valueMin()) / numPages);
|
||||
break;
|
||||
case $.ui.keyCode.PAGE_DOWN:
|
||||
newVal = curVal - ((self._valueMax() - self._valueMin()) / numPages);
|
||||
break;
|
||||
case $.ui.keyCode.UP:
|
||||
case $.ui.keyCode.RIGHT:
|
||||
if(curVal == self._valueMax()) return;
|
||||
newVal = curVal + step;
|
||||
break;
|
||||
case $.ui.keyCode.DOWN:
|
||||
case $.ui.keyCode.LEFT:
|
||||
if(curVal == self._valueMin()) return;
|
||||
newVal = curVal - step;
|
||||
break;
|
||||
}
|
||||
return ret;
|
||||
|
||||
self._slide(event, index, newVal);
|
||||
})
|
||||
.keyup(function( event ) {
|
||||
var index = $( this ).data( "index.ui-slider-handle" );
|
||||
|
||||
return ret;
|
||||
if ( self._keySliding ) {
|
||||
self._keySliding = false;
|
||||
self._stop( event, index );
|
||||
self._change( event, index );
|
||||
$( this ).removeClass( "ui-state-active" );
|
||||
}
|
||||
|
||||
}).keyup(function(event) {
|
||||
|
||||
var index = $(this).data("index.ui-slider-handle");
|
||||
|
||||
if (self._keySliding) {
|
||||
self._keySliding = false;
|
||||
self._stop(event, index);
|
||||
self._change(event, index);
|
||||
$(this).removeClass("ui-state-active");
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
this._refreshValue();
|
||||
|
||||
this._animateOff = false;
|
||||
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
|
||||
this.handles.remove();
|
||||
this.range.remove();
|
||||
|
||||
this.element
|
||||
.removeClass("ui-slider"
|
||||
+ " ui-slider-horizontal"
|
||||
+ " ui-slider-vertical"
|
||||
+ " ui-slider-disabled"
|
||||
+ " ui-widget"
|
||||
+ " ui-widget-content"
|
||||
+ " ui-corner-all")
|
||||
.removeData("slider")
|
||||
.unbind(".slider");
|
||||
.removeClass( "ui-slider" +
|
||||
" ui-slider-horizontal" +
|
||||
" ui-slider-vertical" +
|
||||
" ui-slider-disabled" +
|
||||
" ui-widget" +
|
||||
" ui-widget-content" +
|
||||
" ui-corner-all" )
|
||||
.removeData( "slider" )
|
||||
.unbind( ".slider" );
|
||||
|
||||
this._mouseDestroy();
|
||||
|
||||
return this;
|
||||
},
|
||||
|
||||
_mouseCapture: function(event) {
|
||||
_mouseCapture: function( event ) {
|
||||
var o = this.options,
|
||||
position,
|
||||
normValue,
|
||||
distance,
|
||||
closestHandle,
|
||||
self,
|
||||
index,
|
||||
allowed,
|
||||
offset,
|
||||
mouseOverHandle;
|
||||
|
||||
var o = this.options;
|
||||
|
||||
if (o.disabled)
|
||||
if ( o.disabled ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.elementSize = {
|
||||
width: this.element.outerWidth(),
|
||||
@ -241,16 +266,15 @@ $.widget("ui.slider", $.ui.mouse, {
|
||||
};
|
||||
this.elementOffset = this.element.offset();
|
||||
|
||||
var position = { x: event.pageX, y: event.pageY };
|
||||
var normValue = this._normValueFromMouse(position);
|
||||
|
||||
var distance = this._valueMax() - this._valueMin() + 1, closestHandle;
|
||||
var self = this, index;
|
||||
this.handles.each(function(i) {
|
||||
var thisDistance = Math.abs(normValue - self.values(i));
|
||||
if (distance > thisDistance) {
|
||||
position = { x: event.pageX, y: event.pageY };
|
||||
normValue = this._normValueFromMouse( position );
|
||||
distance = this._valueMax() - this._valueMin() + 1;
|
||||
self = this;
|
||||
this.handles.each(function( i ) {
|
||||
var thisDistance = Math.abs( normValue - self.values(i) );
|
||||
if ( distance > thisDistance ) {
|
||||
distance = thisDistance;
|
||||
closestHandle = $(this);
|
||||
closestHandle = $( this );
|
||||
index = i;
|
||||
}
|
||||
});
|
||||
@ -258,216 +282,218 @@ $.widget("ui.slider", $.ui.mouse, {
|
||||
// workaround for bug #3736 (if both handles of a range are at 0,
|
||||
// the first is always used as the one with least distance,
|
||||
// and moving it is obviously prevented by preventing negative ranges)
|
||||
if(o.range == true && this.values(1) == o.min) {
|
||||
closestHandle = $(this.handles[++index]);
|
||||
if( o.range === true && this.values(1) === o.min ) {
|
||||
index += 1;
|
||||
closestHandle = $( this.handles[index] );
|
||||
}
|
||||
|
||||
this._start(event, index);
|
||||
allowed = this._start( event, index );
|
||||
if ( allowed === false ) {
|
||||
return false;
|
||||
}
|
||||
this._mouseSliding = true;
|
||||
|
||||
self._handleIndex = index;
|
||||
|
||||
closestHandle
|
||||
.addClass("ui-state-active")
|
||||
.addClass( "ui-state-active" )
|
||||
.focus();
|
||||
|
||||
var offset = closestHandle.offset();
|
||||
var mouseOverHandle = !$(event.target).parents().andSelf().is('.ui-slider-handle');
|
||||
offset = closestHandle.offset();
|
||||
mouseOverHandle = !$( event.target ).parents().andSelf().is( ".ui-slider-handle" );
|
||||
this._clickOffset = mouseOverHandle ? { left: 0, top: 0 } : {
|
||||
left: event.pageX - offset.left - (closestHandle.width() / 2),
|
||||
top: event.pageY - offset.top
|
||||
- (closestHandle.height() / 2)
|
||||
- (parseInt(closestHandle.css('borderTopWidth'),10) || 0)
|
||||
- (parseInt(closestHandle.css('borderBottomWidth'),10) || 0)
|
||||
+ (parseInt(closestHandle.css('marginTop'),10) || 0)
|
||||
left: event.pageX - offset.left - ( closestHandle.width() / 2 ),
|
||||
top: event.pageY - offset.top -
|
||||
( closestHandle.height() / 2 ) -
|
||||
( parseInt( closestHandle.css("borderTopWidth"), 10 ) || 0 ) -
|
||||
( parseInt( closestHandle.css("borderBottomWidth"), 10 ) || 0) +
|
||||
( parseInt( closestHandle.css("marginTop"), 10 ) || 0)
|
||||
};
|
||||
|
||||
normValue = this._normValueFromMouse(position);
|
||||
this._slide(event, index, normValue);
|
||||
normValue = this._normValueFromMouse( position );
|
||||
this._slide( event, index, normValue );
|
||||
this._animateOff = true;
|
||||
return true;
|
||||
|
||||
},
|
||||
|
||||
_mouseStart: function(event) {
|
||||
_mouseStart: function( event ) {
|
||||
return true;
|
||||
},
|
||||
|
||||
_mouseDrag: function(event) {
|
||||
_mouseDrag: function( event ) {
|
||||
var position = { x: event.pageX, y: event.pageY },
|
||||
normValue = this._normValueFromMouse( position );
|
||||
|
||||
var position = { x: event.pageX, y: event.pageY };
|
||||
var normValue = this._normValueFromMouse(position);
|
||||
|
||||
this._slide(event, this._handleIndex, normValue);
|
||||
this._slide( event, this._handleIndex, normValue );
|
||||
|
||||
return false;
|
||||
|
||||
},
|
||||
|
||||
_mouseStop: function(event) {
|
||||
|
||||
this.handles.removeClass("ui-state-active");
|
||||
_mouseStop: function( event ) {
|
||||
this.handles.removeClass( "ui-state-active" );
|
||||
this._mouseSliding = false;
|
||||
this._stop(event, this._handleIndex);
|
||||
this._change(event, this._handleIndex);
|
||||
|
||||
this._stop( event, this._handleIndex );
|
||||
this._change( event, this._handleIndex );
|
||||
|
||||
this._handleIndex = null;
|
||||
this._clickOffset = null;
|
||||
|
||||
this._animateOff = false;
|
||||
return false;
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
_detectOrientation: function() {
|
||||
this.orientation = this.options.orientation == 'vertical' ? 'vertical' : 'horizontal';
|
||||
this.orientation = ( this.options.orientation === "vertical" ) ? "vertical" : "horizontal";
|
||||
},
|
||||
|
||||
_normValueFromMouse: function(position) {
|
||||
_normValueFromMouse: function( position ) {
|
||||
var pixelTotal,
|
||||
pixelMouse,
|
||||
percentMouse,
|
||||
valueTotal,
|
||||
valueMouse;
|
||||
|
||||
var pixelTotal, pixelMouse;
|
||||
if ('horizontal' == this.orientation) {
|
||||
if ( this.orientation === "horizontal" ) {
|
||||
pixelTotal = this.elementSize.width;
|
||||
pixelMouse = position.x - this.elementOffset.left - (this._clickOffset ? this._clickOffset.left : 0);
|
||||
pixelMouse = position.x - this.elementOffset.left - ( this._clickOffset ? this._clickOffset.left : 0 );
|
||||
} else {
|
||||
pixelTotal = this.elementSize.height;
|
||||
pixelMouse = position.y - this.elementOffset.top - (this._clickOffset ? this._clickOffset.top : 0);
|
||||
pixelMouse = position.y - this.elementOffset.top - ( this._clickOffset ? this._clickOffset.top : 0 );
|
||||
}
|
||||
|
||||
var percentMouse = (pixelMouse / pixelTotal);
|
||||
if (percentMouse > 1) percentMouse = 1;
|
||||
if (percentMouse < 0) percentMouse = 0;
|
||||
if ('vertical' == this.orientation)
|
||||
percentMouse = ( pixelMouse / pixelTotal );
|
||||
if ( percentMouse > 1 ) {
|
||||
percentMouse = 1;
|
||||
}
|
||||
if ( percentMouse < 0 ) {
|
||||
percentMouse = 0;
|
||||
}
|
||||
if ( this.orientation === "vertical" ) {
|
||||
percentMouse = 1 - percentMouse;
|
||||
}
|
||||
|
||||
var valueTotal = this._valueMax() - this._valueMin(),
|
||||
valueMouse = percentMouse * valueTotal,
|
||||
valueMouseModStep = valueMouse % this.options.step,
|
||||
normValue = this._valueMin() + valueMouse - valueMouseModStep;
|
||||
|
||||
if (valueMouseModStep > (this.options.step / 2))
|
||||
normValue += this.options.step;
|
||||
|
||||
// Since JavaScript has problems with large floats, round
|
||||
// the final value to 5 digits after the decimal point (see #4124)
|
||||
return parseFloat(normValue.toFixed(5));
|
||||
valueTotal = this._valueMax() - this._valueMin();
|
||||
valueMouse = this._valueMin() + percentMouse * valueTotal;
|
||||
|
||||
return this._trimAlignValue( valueMouse );
|
||||
},
|
||||
|
||||
_start: function(event, index) {
|
||||
_start: function( event, index ) {
|
||||
var uiHash = {
|
||||
handle: this.handles[index],
|
||||
handle: this.handles[ index ],
|
||||
value: this.value()
|
||||
};
|
||||
if (this.options.values && this.options.values.length) {
|
||||
uiHash.value = this.values(index);
|
||||
if ( this.options.values && this.options.values.length ) {
|
||||
uiHash.value = this.values( index );
|
||||
uiHash.values = this.values();
|
||||
}
|
||||
this._trigger("start", event, uiHash);
|
||||
return this._trigger( "start", event, uiHash );
|
||||
},
|
||||
|
||||
_slide: function(event, index, newVal) {
|
||||
_slide: function( event, index, newVal ) {
|
||||
var otherVal,
|
||||
newValues,
|
||||
allowed;
|
||||
|
||||
var handle = this.handles[index];
|
||||
if ( this.options.values && this.options.values.length ) {
|
||||
otherVal = this.values( index ? 0 : 1 );
|
||||
|
||||
if (this.options.values && this.options.values.length) {
|
||||
|
||||
var otherVal = this.values(index ? 0 : 1);
|
||||
|
||||
if ((this.options.values.length == 2 && this.options.range === true) &&
|
||||
((index == 0 && newVal > otherVal) || (index == 1 && newVal < otherVal))){
|
||||
newVal = otherVal;
|
||||
if ( ( this.options.values.length === 2 && this.options.range === true ) &&
|
||||
( ( index === 0 && newVal > otherVal) || ( index === 1 && newVal < otherVal ) )
|
||||
) {
|
||||
newVal = otherVal;
|
||||
}
|
||||
|
||||
if (newVal != this.values(index)) {
|
||||
var newValues = this.values();
|
||||
newValues[index] = newVal;
|
||||
if ( newVal !== this.values( index ) ) {
|
||||
newValues = this.values();
|
||||
newValues[ index ] = newVal;
|
||||
// A slide can be canceled by returning false from the slide callback
|
||||
var allowed = this._trigger("slide", event, {
|
||||
handle: this.handles[index],
|
||||
allowed = this._trigger( "slide", event, {
|
||||
handle: this.handles[ index ],
|
||||
value: newVal,
|
||||
values: newValues
|
||||
});
|
||||
var otherVal = this.values(index ? 0 : 1);
|
||||
if (allowed !== false) {
|
||||
this.values(index, newVal, true);
|
||||
} );
|
||||
otherVal = this.values( index ? 0 : 1 );
|
||||
if ( allowed !== false ) {
|
||||
this.values( index, newVal, true );
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
if (newVal != this.value()) {
|
||||
if ( newVal !== this.value() ) {
|
||||
// A slide can be canceled by returning false from the slide callback
|
||||
var allowed = this._trigger("slide", event, {
|
||||
handle: this.handles[index],
|
||||
allowed = this._trigger( "slide", event, {
|
||||
handle: this.handles[ index ],
|
||||
value: newVal
|
||||
});
|
||||
if (allowed !== false) {
|
||||
this.value(newVal);
|
||||
} );
|
||||
if ( allowed !== false ) {
|
||||
this.value( newVal );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
_stop: function(event, index) {
|
||||
_stop: function( event, index ) {
|
||||
var uiHash = {
|
||||
handle: this.handles[index],
|
||||
handle: this.handles[ index ],
|
||||
value: this.value()
|
||||
};
|
||||
if (this.options.values && this.options.values.length) {
|
||||
uiHash.value = this.values(index);
|
||||
if ( this.options.values && this.options.values.length ) {
|
||||
uiHash.value = this.values( index );
|
||||
uiHash.values = this.values();
|
||||
}
|
||||
this._trigger("stop", event, uiHash);
|
||||
|
||||
this._trigger( "stop", event, uiHash );
|
||||
},
|
||||
|
||||
_change: function(event, index) {
|
||||
if (!this._keySliding && !this._mouseSliding) {
|
||||
_change: function( event, index ) {
|
||||
if ( !this._keySliding && !this._mouseSliding ) {
|
||||
var uiHash = {
|
||||
handle: this.handles[index],
|
||||
handle: this.handles[ index ],
|
||||
value: this.value()
|
||||
};
|
||||
if (this.options.values && this.options.values.length) {
|
||||
uiHash.value = this.values(index);
|
||||
if ( this.options.values && this.options.values.length ) {
|
||||
uiHash.value = this.values( index );
|
||||
uiHash.values = this.values();
|
||||
}
|
||||
this._trigger("change", event, uiHash);
|
||||
|
||||
this._trigger( "change", event, uiHash );
|
||||
}
|
||||
},
|
||||
|
||||
value: function(newValue) {
|
||||
|
||||
if (arguments.length) {
|
||||
this.options.value = this._trimValue(newValue);
|
||||
value: function( newValue ) {
|
||||
if ( arguments.length ) {
|
||||
this.options.value = this._trimAlignValue( newValue );
|
||||
this._refreshValue();
|
||||
this._change(null, 0);
|
||||
this._change( null, 0 );
|
||||
}
|
||||
|
||||
return this._value();
|
||||
|
||||
},
|
||||
|
||||
values: function(index, newValue) {
|
||||
values: function( index, newValue ) {
|
||||
var vals,
|
||||
newValues,
|
||||
i;
|
||||
|
||||
if (arguments.length > 1) {
|
||||
this.options.values[index] = this._trimValue(newValue);
|
||||
if ( arguments.length > 1 ) {
|
||||
this.options.values[ index ] = this._trimAlignValue( newValue );
|
||||
this._refreshValue();
|
||||
this._change(null, index);
|
||||
this._change( null, index );
|
||||
}
|
||||
|
||||
if (arguments.length) {
|
||||
if ($.isArray(arguments[0])) {
|
||||
var vals = this.options.values, newValues = arguments[0];
|
||||
for (var i = 0, l = vals.length; i < l; i++) {
|
||||
vals[i] = this._trimValue(newValues[i]);
|
||||
this._change(null, i);
|
||||
if ( arguments.length ) {
|
||||
if ( $.isArray( arguments[ 0 ] ) ) {
|
||||
vals = this.options.values;
|
||||
newValues = arguments[ 0 ];
|
||||
for ( i = 0; i < vals.length; i += 1 ) {
|
||||
vals[ i ] = this._trimAlignValue( newValues[ i ] );
|
||||
this._change( null, i );
|
||||
}
|
||||
this._refreshValue();
|
||||
} else {
|
||||
if (this.options.values && this.options.values.length) {
|
||||
return this._values(index);
|
||||
if ( this.options.values && this.options.values.length ) {
|
||||
return this._values( index );
|
||||
} else {
|
||||
return this.value();
|
||||
}
|
||||
@ -475,97 +501,107 @@ $.widget("ui.slider", $.ui.mouse, {
|
||||
} else {
|
||||
return this._values();
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
_setOption: function(key, value) {
|
||||
|
||||
_setOption: function( key, value ) {
|
||||
var i,
|
||||
valsLength = 0;
|
||||
if ( jQuery.isArray(this.options.values) ) {
|
||||
|
||||
if ( $.isArray( this.options.values ) ) {
|
||||
valsLength = this.options.values.length;
|
||||
};
|
||||
}
|
||||
|
||||
$.Widget.prototype._setOption.apply(this, arguments);
|
||||
$.Widget.prototype._setOption.apply( this, arguments );
|
||||
|
||||
switch (key) {
|
||||
case 'disabled':
|
||||
if (value) {
|
||||
this.handles.filter(".ui-state-focus").blur();
|
||||
this.handles.removeClass("ui-state-hover");
|
||||
this.handles.attr("disabled", "disabled");
|
||||
this.element.addClass("ui-disabled");
|
||||
switch ( key ) {
|
||||
case "disabled":
|
||||
if ( value ) {
|
||||
this.handles.filter( ".ui-state-focus" ).blur();
|
||||
this.handles.removeClass( "ui-state-hover" );
|
||||
this.handles.attr( "disabled", "disabled" );
|
||||
this.element.addClass( "ui-disabled" );
|
||||
} else {
|
||||
this.handles.removeAttr("disabled");
|
||||
this.element.removeClass("ui-disabled");
|
||||
this.handles.removeAttr( "disabled" );
|
||||
this.element.removeClass( "ui-disabled" );
|
||||
}
|
||||
case 'orientation':
|
||||
|
||||
break;
|
||||
case "orientation":
|
||||
this._detectOrientation();
|
||||
|
||||
this.element
|
||||
.removeClass("ui-slider-horizontal ui-slider-vertical")
|
||||
.addClass("ui-slider-" + this.orientation);
|
||||
.removeClass( "ui-slider-horizontal ui-slider-vertical" )
|
||||
.addClass( "ui-slider-" + this.orientation );
|
||||
this._refreshValue();
|
||||
break;
|
||||
case 'value':
|
||||
case "value":
|
||||
this._animateOff = true;
|
||||
this._refreshValue();
|
||||
this._change(null, 0);
|
||||
this._change( null, 0 );
|
||||
this._animateOff = false;
|
||||
break;
|
||||
case 'values':
|
||||
case "values":
|
||||
this._animateOff = true;
|
||||
this._refreshValue();
|
||||
for (i = 0; i < valsLength; i++) {
|
||||
this._change(null, i);
|
||||
for ( i = 0; i < valsLength; i += 1 ) {
|
||||
this._change( null, i );
|
||||
}
|
||||
this._animateOff = false;
|
||||
break;
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
//internal value getter
|
||||
// _value() returns value trimmed by min and max, aligned by step
|
||||
_value: function() {
|
||||
//internal value getter
|
||||
// _value() returns value trimmed by min and max
|
||||
var val = this.options.value;
|
||||
val = this._trimValue(val);
|
||||
val = this._trimAlignValue( val );
|
||||
|
||||
return val;
|
||||
},
|
||||
|
||||
_values: function(index) {
|
||||
//internal values getter
|
||||
// _values() returns array of values trimmed by min and max
|
||||
// _values(index) returns single value trimmed by min and max
|
||||
//internal values getter
|
||||
// _values() returns array of values trimmed by min and max, aligned by step
|
||||
// _values( index ) returns single value trimmed by min and max, aligned by step
|
||||
_values: function( index ) {
|
||||
var val,
|
||||
vals,
|
||||
i;
|
||||
|
||||
if (arguments.length) {
|
||||
var val = this.options.values[index];
|
||||
val = this._trimValue(val);
|
||||
if ( arguments.length ) {
|
||||
val = this.options.values[ index ];
|
||||
val = this._trimAlignValue( val );
|
||||
|
||||
return val;
|
||||
} else {
|
||||
// .slice() creates a copy of the array
|
||||
// this copy gets trimmed by min and max and then returned
|
||||
var vals = this.options.values.slice();
|
||||
for (var i = 0, l = vals.length; i < l; i++) {
|
||||
vals[i] = this._trimValue(vals[i]);
|
||||
vals = this.options.values.slice();
|
||||
for ( i = 0; i < vals.length; i+= 1) {
|
||||
vals[ i ] = this._trimAlignValue( vals[ i ] );
|
||||
}
|
||||
|
||||
return vals;
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
_trimValue: function(val) {
|
||||
if (val < this._valueMin()) {
|
||||
// returns the step-aligned value that val is closest to, between (inclusive) min and max
|
||||
_trimAlignValue: function( val ) {
|
||||
if ( val < this._valueMin() ) {
|
||||
return this._valueMin();
|
||||
}
|
||||
if (val > this._valueMax()) {
|
||||
if ( val > this._valueMax() ) {
|
||||
return this._valueMax();
|
||||
}
|
||||
return val;
|
||||
var step = this.options.step,
|
||||
valModStep = val % step,
|
||||
alignValue = val - valModStep;
|
||||
|
||||
if ( valModStep >= ( step / 2 ) ) {
|
||||
alignValue += step;
|
||||
}
|
||||
|
||||
// Since JavaScript has problems with large floats, round
|
||||
// the final value to 5 digits after the decimal point (see #4124)
|
||||
return parseFloat( alignValue.toFixed(5) );
|
||||
},
|
||||
|
||||
_valueMin: function() {
|
||||
@ -577,49 +613,70 @@ $.widget("ui.slider", $.ui.mouse, {
|
||||
},
|
||||
|
||||
_refreshValue: function() {
|
||||
var oRange = this.options.range,
|
||||
o = this.options,
|
||||
self = this,
|
||||
animate = ( !this._animateOff ) ? o.animate : false,
|
||||
valPercent,
|
||||
_set = {},
|
||||
lastValPercent,
|
||||
value,
|
||||
valueMin,
|
||||
valueMax;
|
||||
|
||||
var oRange = this.options.range, o = this.options, self = this;
|
||||
var animate = (!this._animateOff) ? o.animate : false;
|
||||
|
||||
if (this.options.values && this.options.values.length) {
|
||||
var vp0, vp1;
|
||||
this.handles.each(function(i, j) {
|
||||
var valPercent = (self.values(i) - self._valueMin()) / (self._valueMax() - self._valueMin()) * 100;
|
||||
var _set = {}; _set[self.orientation == 'horizontal' ? 'left' : 'bottom'] = valPercent + '%';
|
||||
$(this).stop(1,1)[animate ? 'animate' : 'css'](_set, o.animate);
|
||||
if (self.options.range === true) {
|
||||
if (self.orientation == 'horizontal') {
|
||||
(i == 0) && self.range.stop(1,1)[animate ? 'animate' : 'css']({ left: valPercent + '%' }, o.animate);
|
||||
(i == 1) && self.range[animate ? 'animate' : 'css']({ width: (valPercent - lastValPercent) + '%' }, { queue: false, duration: o.animate });
|
||||
if ( this.options.values && this.options.values.length ) {
|
||||
this.handles.each(function( i, j ) {
|
||||
valPercent = ( self.values(i) - self._valueMin() ) / ( self._valueMax() - self._valueMin() ) * 100;
|
||||
_set[ self.orientation === "horizontal" ? "left" : "bottom" ] = valPercent + "%";
|
||||
$( this ).stop( 1, 1 )[ animate ? "animate" : "css" ]( _set, o.animate );
|
||||
if ( self.options.range === true ) {
|
||||
if ( self.orientation === "horizontal" ) {
|
||||
if ( i === 0 ) {
|
||||
self.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { left: valPercent + "%" }, o.animate );
|
||||
}
|
||||
if ( i === 1 ) {
|
||||
self.range[ animate ? "animate" : "css" ]( { width: ( valPercent - lastValPercent ) + "%" }, { queue: false, duration: o.animate } );
|
||||
}
|
||||
} else {
|
||||
(i == 0) && self.range.stop(1,1)[animate ? 'animate' : 'css']({ bottom: (valPercent) + '%' }, o.animate);
|
||||
(i == 1) && self.range[animate ? 'animate' : 'css']({ height: (valPercent - lastValPercent) + '%' }, { queue: false, duration: o.animate });
|
||||
if ( i === 0 ) {
|
||||
self.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { bottom: ( valPercent ) + "%" }, o.animate );
|
||||
}
|
||||
if ( i === 1 ) {
|
||||
self.range[ animate ? "animate" : "css" ]( { height: ( valPercent - lastValPercent ) + "%" }, { queue: false, duration: o.animate } );
|
||||
}
|
||||
}
|
||||
}
|
||||
lastValPercent = valPercent;
|
||||
});
|
||||
} else {
|
||||
var value = this.value(),
|
||||
valueMin = this._valueMin(),
|
||||
valueMax = this._valueMax(),
|
||||
valPercent = valueMax != valueMin
|
||||
? (value - valueMin) / (valueMax - valueMin) * 100
|
||||
: 0;
|
||||
var _set = {}; _set[self.orientation == 'horizontal' ? 'left' : 'bottom'] = valPercent + '%';
|
||||
this.handle.stop(1,1)[animate ? 'animate' : 'css'](_set, o.animate);
|
||||
value = this.value();
|
||||
valueMin = this._valueMin();
|
||||
valueMax = this._valueMax();
|
||||
valPercent = ( valueMax !== valueMin ) ?
|
||||
( value - valueMin ) / ( valueMax - valueMin ) * 100 :
|
||||
0;
|
||||
_set[ self.orientation === "horizontal" ? "left" : "bottom" ] = valPercent + "%";
|
||||
this.handle.stop( 1, 1 )[ animate ? "animate" : "css" ]( _set, o.animate );
|
||||
|
||||
(oRange == "min") && (this.orientation == "horizontal") && this.range.stop(1,1)[animate ? 'animate' : 'css']({ width: valPercent + '%' }, o.animate);
|
||||
(oRange == "max") && (this.orientation == "horizontal") && this.range[animate ? 'animate' : 'css']({ width: (100 - valPercent) + '%' }, { queue: false, duration: o.animate });
|
||||
(oRange == "min") && (this.orientation == "vertical") && this.range.stop(1,1)[animate ? 'animate' : 'css']({ height: valPercent + '%' }, o.animate);
|
||||
(oRange == "max") && (this.orientation == "vertical") && this.range[animate ? 'animate' : 'css']({ height: (100 - valPercent) + '%' }, { queue: false, duration: o.animate });
|
||||
if ( oRange === "min" && this.orientation === "horizontal" ) {
|
||||
this.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { width: valPercent + "%" }, o.animate );
|
||||
}
|
||||
if ( oRange === "max" && this.orientation === "horizontal" ) {
|
||||
this.range[ animate ? "animate" : "css" ]( { width: ( 100 - valPercent ) + "%" }, { queue: false, duration: o.animate } );
|
||||
}
|
||||
if ( oRange === "min" && this.orientation === "vertical" ) {
|
||||
this.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { height: valPercent + "%" }, o.animate );
|
||||
}
|
||||
if ( oRange === "max" && this.orientation === "vertical" ) {
|
||||
this.range[ animate ? "animate" : "css" ]( { height: ( 100 - valPercent ) + "%" }, { queue: false, duration: o.animate } );
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
$.extend($.ui.slider, {
|
||||
$.extend( $.ui.slider, {
|
||||
version: "@VERSION"
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
}(jQuery));
|
||||
|
145
ui/jquery.ui.tooltip.js
vendored
145
ui/jquery.ui.tooltip.js
vendored
@ -1,145 +0,0 @@
|
||||
/*
|
||||
* jQuery UI Tooltip @VERSION
|
||||
*
|
||||
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Tooltip
|
||||
*
|
||||
* Depends:
|
||||
* jquery.ui.core.js
|
||||
* jquery.ui.widget.js
|
||||
* jquery.ui.position.js
|
||||
*/
|
||||
(function($) {
|
||||
|
||||
// role=application on body required for screenreaders to correctly interpret aria attributes
|
||||
if( !$(document.body).is('[role]') ){
|
||||
$(document.body).attr('role','application');
|
||||
}
|
||||
|
||||
var increments = 0;
|
||||
|
||||
$.widget("ui.tooltip", {
|
||||
options: {
|
||||
tooltipClass: "ui-widget-content",
|
||||
content: function() {
|
||||
return $(this).attr("title");
|
||||
},
|
||||
position: {
|
||||
my: "left center",
|
||||
at: "right center",
|
||||
offset: "15 0"
|
||||
}
|
||||
},
|
||||
_init: function() {
|
||||
var self = this;
|
||||
this.tooltip = $("<div></div>")
|
||||
.attr("id", "ui-tooltip-" + increments++)
|
||||
.attr("role", "tooltip")
|
||||
.attr("aria-hidden", "true")
|
||||
.addClass("ui-tooltip ui-widget ui-corner-all")
|
||||
.addClass(this.options.tooltipClass)
|
||||
.appendTo(document.body)
|
||||
.hide();
|
||||
this.tooltipContent = $("<div></div>")
|
||||
.addClass("ui-tooltip-content")
|
||||
.appendTo(this.tooltip);
|
||||
this.opacity = this.tooltip.css("opacity");
|
||||
this.element
|
||||
.bind("focus.tooltip mouseenter.tooltip", function(event) {
|
||||
self.open();
|
||||
})
|
||||
.bind("blur.tooltip mouseleave.tooltip", function(event) {
|
||||
self.close();
|
||||
});
|
||||
},
|
||||
|
||||
enable: function() {
|
||||
this.options.disabled = false;
|
||||
},
|
||||
|
||||
disable: function() {
|
||||
this.options.disabled = true;
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
this.tooltip.remove();
|
||||
$.Widget.prototype.destroy.apply(this, arguments);
|
||||
},
|
||||
|
||||
widget: function() {
|
||||
return this.tooltip;
|
||||
},
|
||||
|
||||
open: function() {
|
||||
var target = this.element;
|
||||
// already visible? possible when both focus and mouseover events occur
|
||||
if (this.current && this.current[0] == target[0])
|
||||
return;
|
||||
var self = this;
|
||||
this.current = target;
|
||||
this.currentTitle = target.attr("title");
|
||||
var content = this.options.content.call(target[0], function(response) {
|
||||
// ignore async responses that come in after the tooltip is already hidden
|
||||
if (self.current == target)
|
||||
self._show(target, response);
|
||||
});
|
||||
if (content) {
|
||||
self._show(target, content);
|
||||
}
|
||||
},
|
||||
|
||||
_show: function(target, content) {
|
||||
if (!content)
|
||||
return;
|
||||
|
||||
target.attr("title", "");
|
||||
|
||||
if (this.options.disabled)
|
||||
return;
|
||||
|
||||
this.tooltipContent.html(content);
|
||||
this.tooltip.css({
|
||||
top: 0,
|
||||
left: 0
|
||||
}).position($.extend(this.options.position, {
|
||||
of: target
|
||||
}));
|
||||
|
||||
this.tooltip.attr("aria-hidden", "false");
|
||||
target.attr("aria-describedby", this.tooltip.attr("id"));
|
||||
|
||||
if (this.tooltip.is(":animated"))
|
||||
this.tooltip.stop().show().fadeTo("normal", this.opacity);
|
||||
else
|
||||
this.tooltip.is(':visible') ? this.tooltip.fadeTo("normal", this.opacity) : this.tooltip.fadeIn();
|
||||
|
||||
this._trigger( "open" );
|
||||
},
|
||||
|
||||
close: function() {
|
||||
if (!this.current)
|
||||
return;
|
||||
|
||||
var current = this.current.attr("title", this.currentTitle);
|
||||
this.current = null;
|
||||
|
||||
if (this.options.disabled)
|
||||
return;
|
||||
|
||||
current.removeAttr("aria-describedby");
|
||||
this.tooltip.attr("aria-hidden", "true");
|
||||
|
||||
if (this.tooltip.is(':animated'))
|
||||
this.tooltip.stop().fadeTo("normal", 0);
|
||||
else
|
||||
this.tooltip.stop().fadeOut();
|
||||
|
||||
this._trigger( "close" );
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
})(jQuery);
|
4
ui/jquery.ui.widget.js
vendored
4
ui/jquery.ui.widget.js
vendored
@ -155,7 +155,7 @@ $.Widget.prototype = {
|
||||
.removeAttr( "aria-disabled" )
|
||||
.removeClass(
|
||||
this.widgetBaseClass + "-disabled " +
|
||||
this.namespace + "-state-disabled" );
|
||||
"ui-state-disabled" );
|
||||
},
|
||||
|
||||
widget: function() {
|
||||
@ -192,7 +192,7 @@ $.Widget.prototype = {
|
||||
this.widget()
|
||||
[ value ? "addClass" : "removeClass"](
|
||||
this.widgetBaseClass + "-disabled" + " " +
|
||||
this.namespace + "-state-disabled" )
|
||||
"ui-state-disabled" )
|
||||
.attr( "aria-disabled", value );
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user