You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过AppleScript获取HTML按钮的disabled状态(true或false)

问题原因

你原来的写法存在2个核心问题:

  • 没有在支持JS执行的浏览器作用域下运行代码,该命令必须绑定Safari、Chrome这类支持AppleScript调度的浏览器实例和对应标签页
  • 缺失必要的浏览器权限配置,且原有代码的JS字符串未正确闭合

正确实现方案

前置配置(Safari环境)

先打开Safari偏好设置→「高级」选项卡,勾选底部「在菜单栏中显示开发菜单」,随后进入「开发」菜单,勾选「允许Apple事件中的JavaScript」。

Safari 环境代码

tell application "Safari"
    -- 直接获取当前第一个文档中按钮的disabled状态,返回布尔值true/false
    set buttonStatus to do JavaScript "document.getElementById('view-more').disabled" in document 1
end tell

Chrome 环境代码

tell application "Google Chrome"
    -- 操作当前窗口激活的标签页执行JS获取状态
    set buttonStatus to execute front window's active tab javascript "document.getElementById('view-more').disabled"
end tell

兼容优化

如果存在按钮未加载完成、找不到元素的场景,可以修改JS代码兼容异常情况,避免AppleScript报错:

// 找不到元素时默认返回false,可根据需求调整默认值
document.getElementById('view-more')?.disabled ?? false

内容的提问来源于stack exchange,提问作者Wayland Chin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 09:00:01