如何用jQuery UI selectmenu为每个选项显示工具提示?



当我把鼠标放在selectmenu的选项上时,我想显示一个自定义的工具提示。我可以为普通按钮展示它。例子:

<button id="helpbutton1" title="text in title">Help</button>
$( "#helpbutton1" )
    .button({
        })  
    .tooltip({ 
        content: returnHelpbutton1Content()                     
    });

但是我不能让它与选择菜单一起工作。当我将鼠标放在菜单中的不同选项上时,我希望能够看到每个选项的工具提示。例子:

<label for="SelectMenu">Selectmenu example:</label>
    <select name="SelectMenu" id="SelectMenu">
        <option id="option1" title="Tooltip1">option1</option>
        <option id="option2" title="Tooltip2">option2</option>
    </select>
$( "#SelectMenu" ).selectmenu({ 
            width : 100,
            select: function( event, data ) {                   
                console.log("data.item.value: " + this.value);  
            }               
        });
$( "#option1" ).tooltip({ 
    content: returnTooltip1()                   
    });
$( "#option2" ).tooltip({ 
    content: returnTooltip2()                   
    }); 

我使用jqueryUI 1.11.0。我该怎么做呢?

DEMO jquery ui tooltip on jquery-ui selectmenu.

JS代码:

 $(function() {
 var select_id = "speed";
 $( "#"+select_id ).selectmenu({
     open: function( event, ui ) {
         $('li.ui-menu-item').tooltip({
             items:'li',
             //content: "adsdads ad asdadad asd ad adoption"
             content:function(){
                 //console.log($(this).html());
                 return ($(this).html());
             }
         });
     }
 });
 $( "#"+select_id+"-button").tooltip({items: "span", content: 'This is select'});

Rahul的解决方案应用于页面中的所有选择菜单。这里有一个更简单的解决方案,它不绑定到"open"事件,并且可以应用于任何特定的选择菜单(假设该对象存在并且已经初始化为selectmenu):

$('#myselectbox').selectmenu( "menuWidget" ).tooltip({
    items:'li',
    content: function() {
        return ($(this).html());
    }
});

最新更新