我正在創建一個網站,我需要每隔X秒刷新頁面以檢查API中的新數據。 在頁面上我還有一個chatarea,由javascript和NodeJS控制,人們可以在這裏聊天。每次刷新頁面,聊天都會重置。 如何在頁面重新加載後「複製」chatarea div並「粘貼」它?複製div並在頁面刷新後粘貼
回答
您可以保存jQuery的或只是JavaScript中的含量是這樣的:
var text = $('.chatcontainer').text();
或
var text = document.getElementByClassName("chatcontainer").textContent;
然後將其保存到具有以下功能的餅乾:
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires="+ d.toUTCString();
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}
並致電該功能:
setCookie("chat",text,1);
及後重裝從cookie得到它:
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i <ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
然後:
$('.chatcontainer').text() = getCookie(chat);
或
document.getElementByClassName("chatcontainer").textContent = getCookie(chat);
這將無法正常工作,javascript和jquery vars重置頁面刷新。 – Roy
你在開玩笑吧? **頁面刷新後,整個腳本被重新加載,所以作爲變量和其餘的代碼!** –
你可以在保存文本後做一些請求或保存它的東西。我沒有打算在保存重新加載並設置後... –
功能通過名稱獲取餅乾請重新廣告this。我強烈建議使用事件源,而不是重新加載或使用ajax。
你真的需要刷新嗎? 因爲我的解決方案可以與僞刷新工作: 你可以嘗試一種形式添加到頁面
action="same-old-url"
method="POST"
,然後代替提神,提交表單,並插入到POST數據的HTML內容聊天。然後每次在POST數據中讀取,如果你有一些html添加到你的聊天。
不是真的刷新,但效果是類似的:頁面重新加載,但從技術上說它更像是一個重定向。
- 1. 將div div粘貼到頁面底部
- 2. Android複製並粘貼TextView
- 3. GWT - 複製並粘貼ZeroClipboard
- 4. 複製並粘貼多次
- 5. 用c複製並粘貼#
- 6. 宏 - 複製並粘貼
- 7. 複製並粘貼Excel宏
- 8. iOS複製並粘貼
- 9. 將新標籤頁複製並粘貼到MSForms.Page
- 10. 強制頁面在POST後刷新angularjs
- 11. 複製粘貼userinput
- 12. xcode複製/粘貼
- 13. iPhone複製/粘貼
- 14. 複製粘貼宏
- 15. 在JavaScript中複製/粘貼?
- 16. 複製 - 粘貼在JavaScript
- 17. 複製粘貼在JavaScript
- 18. 複製粘貼在轉置
- 19. 刷新div而不刷新頁面
- 20. 刷新div而不刷新頁面
- 21. 如何複製xml並使用硒在網頁中粘貼
- 22. 複製3行並將它們粘貼在上面
- 23. 複製並粘貼到新的工作簿中重複
- 24. 複製粘貼下面的宏
- 25. VBA複製和粘貼宏!=手動複製粘貼
- 26. Android複製並粘貼多個文本
- 27. 複製並粘貼外來字符
- 28. 複製並粘貼Vim效果
- 29. SyntaxHighlighter行號複製並粘貼
- 30. 複製並粘貼任何設備
爲什麼不使用ajax來檢查新數據而不是頁面刷新? –
或者用聊天文字設置cookie var – Roy
我必須刷新。 – Grizzlly