最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【记录】修复用docbook的docbook-xsl-ns-1.77.1生成的webhelp在浏览器中目录列表显示异常的问题

Docbook crifan 2319浏览 0评论

【背景】

之前早就实现了docbook的webhelp:

【已成功】用Saxon将Docbook生成Webhelp

但是,现在遇到问题是:

虽然在本地,用IE去打开某个webhelp,在点击确定运行ActiveX运行后,(有时候)是可以正常显示的,

但是多数时候也是无法正常显示的:

IE allow blocked content

IE still not show ok

但是:

其他浏览器,比如Firefox和Chrome,都是无法正常显示的:

firefox can not show webhelp

chrome not show webhelp ok

即,左边的目录列表,都无法显示。

并且,在上传本地的docbook的webhelp到在线网站后:

即使也用IE打开,结果也是无法正常显示的:

firefox online show webhelp also not ok

其他firefox和chrome,更无法显示。

现在是希望:

不论是本地的webhelp,还是在线的webhelp

不论是哪种浏览器,IE还是Firefox还是Chrome,

都希望可以,无需更改(比如IE的安全配置,无需关系activeX等东西),都可以正常显示webhelp。

【折腾过程】

1.后来在:

【已成功】用Saxon将Docbook生成Webhelp

中所提到的,那个始终最新的webhelp的地址:

http://snapshots.docbook.org/xsl/webhelp/

中看到了好消息:

用firefox打开该地址:

http://snapshots.docbook.org/xsl/webhelp/docs/

已经可以正常显示了。貌似说明最新的xls和js,已经支持firefox了。

2. 再经测试,chrome打开:

http://snapshots.docbook.org/xsl/webhelp/docs/index.html

也是可以正常显示的。

3.所以,此处,打算去借用该人的webhelp的各种配置,以实现自己上面的目标:

不论是本地还是在线,不论是何种浏览器,都可以正常显示webhelp。

4.另外,看到:

http://50.56.245.89/xsl-ns/webhelp/template/common/jquery/

最后更新时间,是09-22,貌似比:

http://snapshots.docbook.org/xsl/webhelp/template/common/jquery/

的09-04,更加新的。

所以,抽空可以去比较两者,是否有差异。

如果有,还是采用更新的。

不过这个是次要的,先去让正常显示才是主要的。

5.不过,另外:

其makefile:

http://snapshots.docbook.org/xsl/webhelp/Makefile.sample

也是值得参考的。

6.此处,就去想办法,借用别人的配置,实现自己的目标。

然后,从:

http://snapshots.docbook.org/

看到的是:

虽然是可以直接去下载最新的:

http://snapshots.docbook.org/docbook-xsl-ns-snapshot.tar.bz2

或:

http://snapshots.docbook.org/docbook-xsl-snapshot.tar.bz2

但是:

还是希望搞清楚,最新的稳定版本是如何了。

因为我知道的,之前的版本,已经是更新到了:

docbook-xsl-ns-1.77.1

了。

所以:

虽然此处的:

docbook-xsl-ns-snapshot

已经确保webhelp可用了;

但是如果之前的某个版本,比我的docbook-xsl-ns-1.77.1更新的某个版本,已经集成进去更新后的webhelp了。

那么还是用该稳定版的更好。

所以去:

找到最新的版本是什么,

然后下载下来,看看其和snapshot的版本之前的差异,是否包含了webhelp的更新。

包含最新稳定版和我此处的1.77.1有何差别,是否已经更新了webhelp了。

7.先去找最新的稳定版是什么。

从:

https://sourceforge.net/projects/docbook/files/docbook-xsl-ns/

中可见,最新在1.77.1后,已经更新了:

1.78.0

和:

1.78.1

了。

所以:

还是去将当前的xsl-ns从1.77.1升级到最新的1.78.1吧:

【记录】将docbook的xsl-ns从当前的docbook-xsl-ns-1.77.1升级到docbook-xsl-ns-1.78.1

8.但是折腾之前,去看了看:

https://sourceforge.net/projects/docbook/files/docbook-xsl-ns/1.78.0/

和:

https://sourceforge.net/projects/docbook/files/docbook-xsl-ns/1.78.1/

可以看出:

1.78.0中,对于webhelp更新很多;

1.78.1中对于webhelp升级不是很大。

此处不贴出全部升级的内容,只摘录,我比较关系的webhelp的部分内容:

(1)如果js被禁用则不显示侧边栏

(2)默认改为,如果用ant去build,则关闭检测dtd

(3)修复了favicon.ico的链接

(4)从jquery-1.4.2.min.js换为jquery-1.7.2.min.js

(5)换为jquery-ui-1.8.2.custom.min.js

(6)编译webhelp不用ant而改为makefile了(大好事!,省得再去集成ant了,统一都用make)

(7)当浏览器js被禁时,会提示对应的信息

(8)专门为IE8/9优化了性能

(9)TOC面板可点开

(10)加了(之前缺少的)ie.css

(11)传给xsltproc的参数的顺序做了相应调整

总的来说,新版的xsl-ns,对于webhelp,支持好了很多。

 

【总结】

转载请注明:在路上 » 【记录】修复用docbook的docbook-xsl-ns-1.77.1生成的webhelp在浏览器中目录列表显示异常的问题

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
82 queries in 0.181 seconds, using 22.19MB memory