ArtitalkJS / Artitalk

通过leancloud实现的可实时发布说说的js
https://artitalk.js.org
MIT License
322 stars 51 forks source link

Pjax with Artitalk #29

Open inkss opened 4 years ago

inkss commented 4 years ago

一、描述

二、出现 bug 的页面

页面链接:时光这只老母鸡

三、重现

关于问题1:

观察到在加载时,会向 <head> 写入 id 为 add-Artitalk-Style 的样式,在重复的进出几次页面后,出现了重复写入现象,建议在写入之前使用 document.querySelector('#add-Artitalk-Style') 查询是否存在过,再决定是否写入。此外建议文档中提供样式 class 名称,也方便主题作者做自定义修改。

关于问题2:

如果工作量不大的话,是否可以重写一个无 jq 依赖的版本?存疑,待定,(asny 不该是页面加载完成后再引入吗,很奇怪

关于问题3:

Artitalk 没有提供重载函数,按照现有设计,在离开页面时清空 Artitalk 初始化的 AV 对象,是否可以保留一个 window.Artitalk 对象,提供执行初始化、重载函数(类似于 Valine 的思路,如此无许重复加载 js 文件)。

关于问题4:

时间显示不够友好,是否可以提供诸如:X秒前X天前 这类显示,可以参考这个函数:timeago(dateTimeStamp)

Drew233 commented 4 years ago
  1. 这个可以解决
  2. 这个考虑过,但是现在时间+能力还不够,以后会取消对jq的依赖的
  3. 这个同上
  4. 时间显示,不友好吗😭(可以考虑
inkss commented 4 years ago

源码在哪儿啊?我看到的全是压缩后的

Drew233 commented 4 years ago

source里面就是 你上面看到的压缩过的是直接把av-min复制进来的 下面大概从添加css之后就是at的主要代码了

inkss commented 4 years ago

都是压缩的呀

Drew233 commented 4 years ago

15578那行往下,就是at的代码了,上面大部分是引用的其他js直接复制进来了。 等有时间我会把仓库的代码整理一下,方便你们能看懂😂

inkss commented 4 years ago

啊 怎么会那么复杂 要高雅

Drew233 commented 4 years ago

哈哈,一直在学习,之前做的不对的慢慢改就好了🤞