我正在创建一个网站,我需要每隔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