有没有人知道支持回调的HTML / JavaScript / jQuery上下文菜单实现,这些回调允许我通过AJAX加载顶级和子菜单项?
我需要支持非常动态的上下文菜单,其中可用菜单项由权限,数据访问权限和数据字典关系确定。我无法预先创建菜单项,因为菜单结构的项目和深度是在运行时确定的。
我特别想知道为jQuery 1.9开发的新iPod style menu是否支持动态AJAX加载,因为这种菜单风格非常适合我们的要求。
感谢。 格伦。
答案 0 :(得分:1)
试试这个:
http://abeautifulsite.net/blog/2008/09/jquery-context-menu-plugin/
易于实施和维护。
修改强>
您可以通过向UL提供ID来动态访问您的菜单:
<ul id="contextmenuid">
/*Empty menu to be created dynamically*/
</ul>
然后使用javascript,您可以访问此UL并创建/修改所需的LI:
var contextMenu = document.getElementById(contextmenuid);
//This part would be dynamic loop to add menu items
var contextMenuItem = document.createElement('li');
var contextMenuItemLink = document.createElement('a');
contextMenuItem.setAttribute('class', 'imageclass'); //imageclass will be used to show the menu item image
contextMenuItemLink.setAttribute('href', '#doaction'); //#doaction is the item ID, it would be number
contextMenuItemLink.setAttribute('title', 'Tooltip Info'); //Tooltip
contextMenuItemLink.innerHTML = 'Dynamic Item, click me...';//Menu item text
contextMenuItem.appendChild(contextMenuItemLink);
//Add the new menu item to the context menu
contextMenu.appendChild(contextMenuItem);
同样适用于子菜单:
<ul id="contextmenuid">
<li><a href="http://msn.com">MSN</a>
<ul id="contextsubmenuid">
/*to be created dynamically*/
</ul>
</li>
</ul>
关于样式,我猜你可以使用CSS来获得你需要的东西。
希望这会有所帮助。