V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fourstring
V2EX  ›  Hexo

Hexo next 主题的 local search 功能失效,点击搜索链接无法弹出叠加层

  •  
  •   fourstring · 2016-08-11 20:18:01 +08:00 · 4423 次点击
    这是一个创建于 3026 天前的主题,其中的信息可能已经有所发展或是发生改变。

    大致情况如题。

    我用 F12 看了一下,点击“搜索”时,没有出现错误,并且‘ network ’选项卡中可以看到正常请求 search.xml 文件且返回了 200.尝试清理了浏览器缓存,更换浏览器也无果。如下图:

    点击这个链接进站即可体验该 bug

    求大神帮忙!

    4 条回复    2017-08-14 11:57:10 +08:00
    lujjjh
        1
    lujjjh  
       2016-08-11 20:49:34 +08:00
    看了下是 parse error

    《如何帮助一个用 iOS 的技术盲妹子富强?》这篇文章里混入了三个奇奇怪怪的字符(\u0008 ),分别在:

    1. 仅靠_ 一个文本文件
    2. Sa_ fari 和 OS X 双击安装均会显示
    3. 签名到此完成, _安装时也会显示

    光标在编辑器里移动的时候可以明显察觉到这三处有不可见字符,都删掉就好了。
    fourstring
        2
    fourstring  
    OP
       2016-08-11 21:03:37 +08:00
    @lujjjh 应该是 HTML 的 这样的字符,不知道为什么不能显示。。。
    膜拜大神!另外请教调试方法?
    lujjjh
        3
    lujjjh  
       2016-08-11 21:24:27 +08:00
    @fourstring \u0008 是退格键,而且应该是出现在 .md 文件里的。类似的问题以前写 Hexo 也遇到过,可能跟编辑器或者输入法有关系,没有查明是什么原因。

    调试的话,因为你用的是 jQuery ,手动发起一个请求就能发现实际上 jQuery 调用了 error 的回调函数,报了一个 parse error 。用 Chrome 访问 search.xml ,能看到这样的错误提示:

    error on line 238 at column 37: Input is not proper UTF-8, indicate encoding !
    Bytes: 0x08 0xE4 0xB8 0x80

    把 search.xml 下载下来,正则表达式搜索 \x08 或者 \u0008 。
    LongDream
        4
    LongDream  
       2017-08-14 11:57:10 +08:00
    其实就是这个字符`^H`,在 Sublime 显示为一个带底纹的`BS`,表示的是 BS 退格键。可以在 Sublime text 复制那个 BS 退格键(不是 BS 字母,是一个 ASCII 控制符)。然后 Command+Shift+g,查找里黏贴那个 BS 退格键,然后选择_post 目录路径,replace 地方填空即可。这样可以全目录删除 BS 退格键。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   944 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 20:59 · PVG 04:59 · LAX 12:59 · JFK 15:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.