掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1927|回复: 2

[使用求助] 欧路Windows版执行JS两次?

[复制链接]
  • TA的每日心情
    擦汗
    2020-7-3 13:51
  • 签到天数: 19 天

    [LV.4]偶尔看看III

    发表于 2021-5-25 20:47:40 | 显示全部楼层 |阅读模式
    我的JS程序在每个词头内容的尾部引入一次,但是整个JS会被欧路执行两次!我确信这样是因为,我在JS第一行加了一个alert语句结果弹出窗口两次。但这个JS下在GOLDENDICT下执行很好没有重复执行的问题。: {2 e' r/ ]6 J$ F3 f1 V% [+ B
    这可能是什么问题呢?我已经检查过MDX中没有两个词头是完全相同的。是原生JS没有用JQUERY库。
    0 o6 }% }& M$ H: t" @
    + r% }  w5 q' V2 ]' D5 @$ V欧路表现总是很怪异,在标准WINDOWS浏览器和GOLDENDICT下正常的往往在欧路这里就不正常。没办法调试,只能当黑盒看外特性,调试相当艰难。
    # a3 i' B# z4 e- Q2 y哪个WINDOWS下的浏览器是接近欧路的可以作为替代调试的?
  • TA的每日心情
    奋斗
    2022-6-1 19:02
  • 签到天数: 377 天

    [LV.9]以坛为家II

    发表于 2021-5-25 22:19:58 | 显示全部楼层
    有可能是@@@LINK导致同时加载了两个词条的内容,你试试多查几个词,看看是不是都这样2 A# \7 e% X! f# h: q8 Y2 y

    4 C8 Y, {' F, V. ?不管原因是啥,解决办法还是有的,用全局变量,第一次变量为FALSE执行代码,并将变量变为TRUE,后面判断为TRUE就不执行了
  • TA的每日心情
    擦汗
    2020-7-3 13:51
  • 签到天数: 19 天

    [LV.4]偶尔看看III

     楼主| 发表于 2021-5-28 16:04:35 | 显示全部楼层
    simonfire 发表于 2021-5-25 22:19
      G. O# \. P; a0 P有可能是@@@LINK导致同时加载了两个词条的内容,你试试多查几个词,看看是不是都这样
    * J3 o/ s, y  V9 A' `7 H- k1 w) S( ^$ i/ x9 \2 B7 Y5 n
    不管原因是啥,解决 ...
    ) o+ {/ r4 s! P. a
    经查与@@@LINK无关。的确没有两个相同的词头。, H6 X& T* v  \. a  W  Z" I4 V. H" o1 q, u
    你说的全局变量作标记的方法我早就想到过,根本没有用。它死活就是要执行两遍。) f2 a' K& p1 l% c: ]  |/ I
    * [% V  q4 S6 Y* n6 T: f0 {0 {+ N
    最后用一个简单方法解决了:将整个程序放在 window.onload = function() {} 中。( m# r4 ^/ M. _. a( q& L6 `$ ?

    # x; J& i% z% A但看不出来为什么这样瞎猫碰上死老鼠就可以解决,因为理论上说alert语句和dom树是否解析完是没有关系的。不管你这个alert语句何时真正执行,是在DOM解析之前之中还是之后,总归应该只执行一次吧,为什么要执行两次呢?!
    ' b: V7 ~/ o0 F2 K" d( m' Y' U& Z0 t+ E7 H0 k

    - \3 u: k5 d9 ?. W2 v; t2 {5 ^# ?实际完整的JS程序有几千行,alert测试语句放在最前面。我惊奇地发现如果JS程序短一些就不会出现alert执行两次的怪现象,即使不将整个程序放在 window.onload = function() {} 中也只执行一次无误。
    6 T2 {) R3 Q% y
    " ?9 [' k; X$ Z2 `8 B" K, M  @; I7 m6 P
    只能说这个欧路是BUG多多了,欧路还有很多CSS渲染的怪异。这个词典软件在我的使用中唯一的优势就是同时打开多部词库时渲染快很多,否则我就只用GoldenDict了。+ Y) c% q) u  r
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2026-10-29 12:22 , Processed in 0.018680 second(s), 21 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表