首页 > 解决方案 > 无法以编程方式单击下拉菜单中的项目

问题描述

我正在尝试为 tampermonkey 创建一个简单的脚本,当通过键盘快捷键触发时,它将以编程方式在下拉菜单中单击/选择特定的字体大小。当我单击论坛面板中的特定按钮时,菜单会打开,它会列出所有可用的文件字体大小。

菜单如下所示: 下拉菜单

Chrome 的检查器给出了打开菜单的这种 html 格式: html 格式

这里有很多主题来解决这个问题,如何单击下拉项,我已经尝试了几乎所有的方法,包括 javascript 和 jquery,但没有任何效果。

我只设法以编程方式单击并打开使用以下代码打开下拉菜单的按钮:

document.getElementById('cke_12').click();

打开下拉列表后,我触发了应该选择/单击特定字体大小的代码。我试过这些代码:

document.getElementById('cke_70').click();
document.querySelector('cke_70').click();
document.getElementById('cke_panel_list').selectedIndex = "8"
document.getElementById("cke_panel_list").value = "8";
document.querySelector('cke_panel_list').value = '8'
$('cke_70')[0].click();
$('cke_70').click();
$("li#cke_70").trigger("click");
$("ul li:first").trigger("click");
$('cke_panel_list li:eq(8)').trigger("click");
$('cke_panel_list').find('li').eq(8).click();
$('cke_panel_list').val('8').trigger('change');
$('cke_panel_list').val('8').trigger('click');
$('cke_panel_list').prop('selectedIndex', 8);

我也尝试过使用 cke_70_option 作为 id。但是没有选择/单击任何项​​目,下拉菜单保持原样打开。

知道我做错了什么吗?

标签: javascriptjqueryhtmldrop-down-menutampermonkey

解决方案


$(".cke_panel_list").click(function(){
    return $(this).val();
});

这是 jQuery 选择所有具有 cke_panel_list 类的元素。返回该值将为您提供该元素的值。


推荐阅读