Ich denke, das ist ein neues Verhalten seit Safari 11, aber ich bin mir nicht absolut sicher.
Ich neige dazu, Safari die ganze Zeit geöffnet zu lassen, mit mehreren Seiten mit Registerkarten, jede für ein anderes „Thema“.
Beim Neustart - wenn ich weniger herzhafte Kekse usw. gereinigt habe oder sogar bei der seltenen Gelegenheit, dass ich neu starte - wurden alle Registerkarten neu geladen, unabhängig davon, ob sie derzeit sichtbar sind oder nicht.
Dieses Verhalten hat sich geändert und jetzt ist jeder Tab, zu dem ich gehe, leer und wird nicht geladen, bis ich tatsächlich dorthin wechsle. Ich verstehe, dass die Philosophie darin bestehen könnte, Ressourcen zu sparen, bis Sie „beweisen“, dass Sie sie tatsächlich brauchen, aber ehrlich gesagt, wenn ich sie nicht bräuchte, wären sie überhaupt nicht offen.
Ich habe tatsächlich die Angewohnheit entwickelt, direkt nach dem Start schnell durch alle Registerkarten zu blättern, sodass ich die irritierende Verzögerung nur einmal sehe.
Weitere Irritation - die Version, die nach der 2-Sekunden-Pause geladen wird, ist immer noch die zwischengespeicherte Version, also müssen Sie sie sowieso sofort aktualisieren:/
Daher möchte ich dieses Verhalten beseitigen.
Ich möchte, wenn möglich, dass jeder Tab bereits mit der aktuellen, nicht zwischengespeicherten Version der Seite zum Zeitpunkt des Starts von Safari geladen ist. Danach kann ich mit meiner eigenen Aktualisierung umgehen, ich möchte nur nicht diese zusätzlichen 2 Sekunden für jede und jede Registerkarte bei der ersten Verwendung warten müssen.
Ich habe die Develop & Debug-Menüs bereits sichtbar, für den Fall, dass das 'Fix' darin enthalten ist, aber ehrlich gesagt ist mein Verständnis dieser Menüs suboptimal. Ich denke ehrlich gesagt, ich habe sie sichtbar, damit ich mich cool fühle, und nicht, weil ich tatsächlich weiß, wofür sie sind ;)
Dies ist derzeit Safari 11.0.2 auf El Capitan.
Mir ist keine Möglichkeit bekannt, das Standardverhalten von Safari zu ändern, aber diese Aufgabe kann leicht genug automatisiert werden, wenn Sie die Möglichkeit haben, ein AppleScript auszuführen.
Ich verwende selbst FastScripts und Keyboard Maestro , damit ich meinen vielen Skripten globale oder App-spezifische Tastaturkürzel zuweisen kann.
Dieses AppleScript lädt jeden Tab im Frontfenster von Safari neu.
----------------------------------------------------------------
# Auth: Christopher Stone
# dCre: 2011/08/09 20:33
# dMod: 2015/11/14 16:46
# Appl: Safari
# Task: Reload Every Tab in front window.
# Libs: ELb
# Osax: None
# Tags: @Applescript, @Safari, @Reload, @Tabs, @Front, @Window
----------------------------------------------------------------
try
tell application "Safari"
set tabList to tabs of front window
repeat with theTab in tabList
tell theTab to do JavaScript "location.reload(true)"
end repeat
end tell
on error e number n
stdErr(e, n, true, true) of me
end try
----------------------------------------------------------------
--» HANDLERS
----------------------------------------------------------------
on stdErr(e, n, beepFlag, ddFlag)
set e to e & return & return & "Num: " & n
if beepFlag = true then
beep
end if
if ddFlag = true then
if n ≠ -128 then
try
tell application (path to frontmost application as text) to set ddButton to button returned of ¬
(display dialog e with title "ERROR!" buttons {"Copy Error Message", "Cancel", "OK"} ¬
default button "OK" giving up after 30)
if ddButton = "Copy Error Message" then set the clipboard to e
end try
end if
else
return e
end if
end stdErr
----------------------------------------------------------------
Auf meinem System habe ich ihm eine Tastenkombination von gegeben ⌃⇧⌘R, was für mich eine gute Gedächtnisstütze ist.
Es ist einfach genug, das Skript zu ändern, um jede Registerkarte in jedem Fenster neu zu laden.
----------------------------------------------------------------------------
# Auth: Christopher Stone
# dCre: 2011/08/09 20:33
# dMod: 2011/08/09 20:57
# Appl: Safari
# Task: Reload Every Tab in Every Window.
# Libs: None
# Osax: None
# Tags: @Applescript, @Reload, @Tabs, @Every, @Window
----------------------------------------------------------------------------
tell application "Safari"
set tabList to tabs of windows
repeat with theWindow in tabList
repeat with theTab in theWindow
tell (theTab's contents)
do JavaScript "location.reload(true)"
end tell
end repeat
end repeat
end tell
----------------------------------------------------------------------------
Ich benutze dieses so selten, dass ich ihm keine Tastenkombination gegeben habe und es manuell aus dem FastScripts-Menü aktivieren muss. (Dies ist auch ein Schutz, um zu verhindern, dass ich versehentlich einen Hotkey drücke und warten muss, bis jeder Tab neu geladen wird.)
-ccs