function sync_data() { localStorage.setItem("syncDataClicked", true); location.reload(); } window.onload = function () { if (localStorage.getItem("syncDataClicked") === "true") { localStorage.removeItem("syncDataClicked"); sync_data('show'); } };
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Hello</title> </head> <body> <input type="submit" name="submit3" onclick="sync_data()" value="Sync data"> </body> </html>
Html: <input type="submit" name="submit3" onclick="sync_data()" value="Sync data"> JS: function sync_data() { window.onload = function () { setTimeout(function () { sync_data('show'); }, 5000); } }
Dieses js funktioniert nicht. Nach dem Klicken und Neuladen der Seite muss ich ein Popup über die Funktion sync_data() hinzufügen. Gibt es eine Lösung? Ich habe mit lokalem Speicher aktualisiert, aber es wird eine Popup-Meldung angezeigt
您的window.onload函数已经在sync_data函数内。因此 window.onload 不会被触发,因为单击按钮时页面已经加载。所以你的window.onload函数应该在执行sync_data函数之前执行。所以在sync_data函数中你应该包含flag。根据该标志,window.onload 函数将被触发。您可以使用 localStorage 来存储标志。这是我的建议代码。我不确定它是否有效。我将自定义弹出警报添加到代码中。
您可以使用以下代码: