Suponiendo que la muestra seleccionable en el sitio web jQuery UI (http://jqueryui.com/demos/selectable/):
<style>
#feedback { font-size: 1.4em; }
#selectable .ui-selecting { background: #FECA40; }
#selectable .ui-selected { background: #F39814; color: white; }
#selectable { list-style-type: none; margin: 0; padding: 0; width: 60%; }
#selectable li { margin: 3px; padding: 0.4em; font-size: 1.4em; height: 18px; }
</style>
<script>
$(function() {
$("#selectable").selectable();
});
</script>
<div class="demo">
<ol id="selectable">
<li class="ui-widget-content">Item 1</li>
<li class="ui-widget-content">Item 2</li>
<li class="ui-widget-content">Item 3</li>
<li class="ui-widget-content">Item 4</li>
<li class="ui-widget-content">Item 5</li>
<li class="ui-widget-content">Item 6</li>
<li class="ui-widget-content">Item 7</li>
</ol>
</div><!-- End demo -->
se puede tener una función como:
function selectSelectableElement (selectableContainer, elementToSelect)
{
// add unselecting class to all elements in the styleboard canvas except current one
jQuery("li", selectableContainer).each(function() {
if (this != elementToSelect[0])
jQuery(this).removeClass("ui-selected").addClass("ui-unselecting");
});
// add ui-selecting class to the element to select
elementToSelect.addClass("ui-selecting");
selectableContainer.selectable('refresh');
// trigger the mouse stop event (this will select all .ui-selecting elements, and deselect all .ui-unselecting elements)
selectableContainer.data("selectable")._mouseStop(null);
}
y utilizarlo como:
// select the fourth item
selectSelectableElement (jQuery("#selectable"), jQuery("#selectable").children(":eq(3)"));
Esto se puede mejorar para permitir la selección de una colección de elementos, pero es un punto de partida para obtener tu yendo
Cool. Probablemente no esté relacionado, pero ¿por qué Ctrl + Click no puede seleccionar más de un trabajo en esa muestra? ¿Es algo con jsfiddle? – Svish
Sí, lo noté también. Después de la prueba, parece que jQueryUI 1.8.16 es el problema. Después de darle a jsFiddle una referencia a 1.8.17, Ctrl + Click funciona. Actualicé el ejemplo. – Homer
Excelente. ¡Gracias! – Svish