TA的每日心情 | 奋斗 2022-6-1 19:02 |
---|
签到天数: 377 天 [LV.9]以坛为家II
|
本帖最后由 须佐之男 于 2018-5-8 21:36 编辑
8 B2 m6 p% Y# ?9 v9 [' D- ^5 |1 i; j
写在前面:
0 h! L# A) C7 N& n# L7 U7 ?+ i4 |; E. @其实本来没打算写这个帖子的,因为这个方法虽然确实可以实现隐藏,但需要限定在一定条件下。但是 @EarthWorm 问起这个问题,所以就写出来吧。5 _0 k; j2 k0 E u p1 G% L# M& j
mdx格式的词库其实就是一个个不完整的html文件的集成,mdict、欧路、深蓝等app可以从mdx读取到你查的那个词所对应的的html文件,以网页的形式显示出来。读取的方式我不了解,但是欧路和mdict、深蓝在显示的方式上是不同的。欧路查词后显示显示的界面其实就是一整个网页,所有词典都在同一个网页上,每个词典都是用div标签所包含(并且添加有区分标示的id,类)。在页面的头部和底部添加有:发音图标、我的笔记等东西。+ H$ d, {) g6 R' {
% b! S! \1 q, ?4 f; _隐藏方法:
, b+ J+ V a3 T+ e- R前面说到欧路是吧所有页面显示在一个网页上的,包括发音图标和我的笔记和其他词典,这也就给我们操作发音图标和我的笔记的可能。
, M. X: M/ H/ H& P$ h0 u$ K, n7 S通过一个特别制作的词库,获取到欧路显示页面的源码,得知发音图标是在一个id为eudicWordInfoHead的div标签里,我的笔记实在一个id为customNote的div标签里。
4 ]1 _5 N! S% z我们只要隐藏着两个div就行了,可以分别通过js和css隐藏。5 T5 q; c: U% F9 ^1 ~4 F$ p
css方法:
& J* ?; F, b* o ^' V先确定要添加在哪本词典上,然后找到被欧路渲染后的css文件(之所以找渲染后的是因为欧路会在css的选择器前加上词典获得的随机id,样式就只能在本词典有效,就不能影响词典外了)。在文件管理(我用的是x-plore)找到欧路的文件夹,名字是eudb_en,打开找到tmp,这是欧路的缓存文件夹,包括词典的css、js、图片、发音的音频文件、字体等,每个词典一个独立文件夹,可以复制你要添加词典的css文件名来搜索,或者一个个打开确认。* M+ @$ c1 n2 Y- m( a$ |
找到之后再里边添加以下css样式,保存就行。或者在这个文件夹(你找到的欧路缓存目录tmp下,类似于114428939_mdx_1这样的)新建一个和mdx同名的css文件,欧路也认
/ _8 [# W. D7 y+ C# h+ g. ]缺点:比较麻烦,每次清除欧路缓存后要重复操作) K: k- v, |1 {: i1 h" z/ s' u
- #eudicWordInfoHead,#customNote {
9 K# t4 D! M. H J7 ]. Z. X* ? - display:none !important;
% a- R# l- Y0 P6 r, ^ - }
复制代码
% e& q4 }6 q( Y7 c* Q( Qjs方法:
- D+ Q, o+ D3 ?. b# f) Ejs方法相对来讲操作简单一些,原理是一样的。下面两句加到js的末尾;或者新建一个和mdx同名的js,内容就是以下内容比如mdx是simon.mdx,新建的js就命名为simon.js,欧路会自动读取的。; B! o/ x5 F& v0 `$ ^9 q. x
- setTimeout(function () {7 k3 A3 G2 y9 }4 r5 N
- document.getElementById("eudicWordInfoHead").style.display = "none";
' N1 D2 J, z: F$ u$ r - document.getElementById("customNote").style.display = "none";},0);
复制代码 3 i. O9 B( A+ c9 Y; m. `3 r
要求就是引用js或css的词典必须是默认展开的,且包含你当前所查的词。比如你把css或js添加在英文词典里,但查的是汉字,这本词典不显示,那肯定不会生效。
; Q, H9 g1 b k- J- w: [( }5 | f V7 Z* J% ~9 S! I
7 J) L, J3 p6 y2 J$ k
css的方法还可以修改词典名称,见下图。其实能反编译apk是最好的办法,直接从源头实现,就不用这么麻烦了,但是我不会,至少目前不会。! O& u8 m, c' A k, E: ~
另附上我获取的欧路显示的源码,有改动,但基本就是这个样子
" B$ q/ J! J' e6 ~ W# H& i9 j
4 P& _2 x5 I' x. f* k- _/ k7 R3 f' ?* Q: G+ y$ j: {
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?免费注册
x
评分
-
5
查看全部评分
-
|