1. AppleScript sourceसंपत्ति
आप सफारी की sourceसंपत्ति का उपयोग करने की कोशिश कर सकते हैं, जो ""तब तक है जब तक कि एचटीएमएल कोड इसमें लोड नहीं हो जाता है (जो पेज लोड होने के बाद ही किया जा सकता है)। हालाँकि, ध्यान दें कि यह जरूरी नहीं है कि पृष्ठ का प्रतिपादन किया गया है :
tell application "Safari"
.
.
repeat while document 1's source = ""
delay 0.5
end repeat
.
.
end tell
sourceसंपत्ति पर रीसेट है ""भी पृष्ठ लोड / रीलोड के बीच।
2. Reload बटन UI तत्व
यदि आप जानना चाहते हैं कि कोई पृष्ठ स्क्रीन पर लोड और प्रस्तुत किया गया है, तो यह निर्धारित करने के लिए एक विश्वसनीय तरीका है कि क्या URL बार में बटन "पुनः लोड" बटन (लोड और रेंडर किया गया) या "रद्द करें" बटन है (पृष्ठ अभी भी लोड हो रहा है / प्रतिपादन:)
tell application "System Events" to repeat until exists (buttons of ¬
UI elements of groups of toolbar 1 of window 1 of ¬
process "Safari" whose name = "Reload this page")
delay 0.5
end repeat
3. जावास्क्रिप्ट readyStateसंपत्ति
यदि आपके पास ऐप्पल ईवेंट से जावास्क्रिप्ट को डेवलप मेनू में टिक करने की अनुमति है , तो आप निम्न की readyStateसंपत्ति का उपयोग कर सकते हैं document:
tell application "Safari"
.
.
tell document 1 to repeat
do JavaScript "document.readyState"
if the result = "complete" then exit repeat
delay 0.5
end repeat
.
.
end tell
document.readyStateजावास्क्रिप्ट संपत्ति पाँच में से एक मान देता है:
uninitialized: अभी तक लोडिंग शुरू नहीं की है
loading: लोड हो रहा है
loaded: लोड किया गया है
interactive: पर्याप्त लोड किया गया है और उपयोगकर्ता इसके साथ बातचीत कर सकता है
complete: पूरी तरह से भरी हुई