2016-08-19 3 views
0

Я хотел бы найти вкладку сафари, и сосредоточиться на этой вкладкеAppleScript: Поиск вкладка сафари и открытая вкладка

Это не работает, однако вкладка находится в порядке, я просто не могу открыть эту вкладку.

tell application "Safari" 
    repeat with t in tabs of windows 
     tell t 
      if name starts with "facebook" then open tab 
     end tell 
    end repeat 
end tell 

Также интересно, могу ли я найти текст с другой вкладки без фокуса на этой вкладке?

to getInputByClass75(theClass, num) 
    tell application "Safari" 
     set input to do JavaScript " 
document.getElementsByClassName('" & theClass & "')[" & num & "].innerHTML;" in document 1 
    end tell 
    return input 
end getInputByClass75 
getInputByClass75("Order", 0) 
set theText to Unicode text 
set theSource to getInputByClass75("Order", 0) 

property leftEdge75 : "<a class=\"columns\" href=\"/Web" 
property rightEdge75 : "\">Display</a>" 
set saveTID to text item delimiters 
set text item delimiters to leftEdge75 
set classValue to text item 2 of theSource 
set text item delimiters to rightEdge75 
set OrderLink to text item 1 of classValue 
set text item delimiters to saveTID 
OrderLink 

ответ

1

Правая фраза принести вкладку на передний план является

tell window x to set current tab to tab y

Попробуйте

tell application "Safari" 
    repeat with w in windows 
     if name of w is not "" then --in case of zombie windows 
      repeat with t in tabs of w 
       if name of t starts with "facebook" then 
        tell w to set current tab to t 
        set index of w to 1 
       end if 
      end repeat 
     end if 
    end repeat 
end tell 

-

Вы можете выполнять JavaScripts в фоновых вкладках. Укажите вкладку следующим образом:

tell application "Safari" 
    do JavaScript "document....." in tab 1 of window 1 
end tell 
+0

Спасибо, это здорово. Первый скрипт (вкладка «Найти») работает нормально, но всегда имеет ошибку «Safari получил ошибку: не удается получить каждую вкладку элемента 2 каждого окна». –

+0

Это может быть зомби-окно. Я обновил ответ. – user309603

+0

только одна мелочь, как бы вы сохранили номер вкладки вместо переменной? Я попробовал, если имя t содержит «google», а затем установите tabNumber в t, но тогда результат будет выглядеть как «элемент 5 каждой вкладки элемента 1 каждого окна приложения« Safari »" –

Смежные вопросы