我正在使用google chrome应用程序,它使用了contextmenu。我的contextmenu包含一些条目,其中一些是嵌套的。我的问题是这样一个嵌套菜单,其中子元素是单选按钮。我的应用程序还提供了循环这些选项的快捷方式。所以在我的JS中,我编写了代码,以便更新上下文菜单以正确反映当前选择。所以基本上
Parent --> Child Radio 1 (Selected) Parent --> Child Radio 1
Child Radio 2 Child Radio 2 (Selected)
Child Radio 3 Child Radio 3
[Before Shortcut Press] [After Shortcut Press]
当我使用正确的id和选项调用chrome.contextMenus.update函数时,更新仅在其为渐进式时发生,即从子级1到2或2到3,依此类推。如果我走另一条路,则不会发生更新。该函数也不会抛出任何错误。也许我误解了使用单选按钮的目的。我只想让它以任何一种方式更新。此外,一旦我将最后一个孩子更新为所选孩子,它就会卡住。之后不会移动。
//Code to handle shortcut
chrome.contextMenus.update(radioUniqueID, { 'checked': true });
这是我最初创建菜单的方式。
for(i = 0; i < t.playlist.length; i++) {
chrome.contextMenus.create({ 'title': t.playlist[i].name, 'type': 'radio', 'parentId': parentID, 'id': 'play' + i});
}