AppleScript中缺少值的Javascript(用于在Safari中单击按钮)

问题描述 投票:0回答:1

我有以下包含Javascript的AppleScript:

set buttontext to "Add Option"
set buttonloc to 1

tell application "Safari"
    activate
    tell window 1
        do JavaScript "var buttonTags = document.getElementsByTagName(\"button\"); 
        var searchText = \"" & buttontext & "\"; 
        var found; 
        for (var i = 0; i < buttonTags.length; i++) 
        {if (buttonTags[i].textContent == searchText) {
        found = buttonTags[i]; break;
        }
        }
        buttonTags[" & buttonloc & "].click();"
    end tell
end tell

它编译得很好,但在执行时没有动作,我收到“缺失值”错误。它旨在遍历Safari中的网页,并允许用户指定按钮文本和排名以便能够单击它。

当在Safari的开发控制台中直接执行此Javascript时,它可以正常工作,但是我需要在AppleScript中将它包装成更长的例程。

建议赞赏!

javascript html safari applescript
1个回答
1
投票

我已经设法通过修改JS的结尾来解决这个问题:

buttonTags[" & buttonloc & "].click();" in current tab
© www.soinside.com 2019 - 2024. All rights reserved.