# 修改The Little Dict的js文件，自动朗读全部语音

**URL:** <https://forum.freemdict.com/t/topic/7226>\
**Category:** 词典装饰排版交流分享\
**Tags:** mdx, 改版\
**Created:** [2021 年7 月 10 日 15:55 UTC](https://forum.freemdict.com/t/topic/7226 "2021-07-10T15:55:53Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

作者： ![LeaParda](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/leaparda/32/18691_2.png) [@LeaParda](https://forum.freemdict.com/u/LeaParda)\
发布日期： [2021 年7 月 10 日 15:55 UTC](https://forum.freemdict.com/t/topic/7226/1 "2021-07-10T15:55:54Z")

</div>

[fy.zip](https://forum.freemdict.com/uploads/short-url/tY0HthV3REY35TrrUc6HHGaO2Se.zip) (31.5 KB)  
**原帖不支持mdict和欧陆，网友反馈后做了修改，请看#10 和 #11楼。思路可用在任何支持js的词典上，可以实现自动朗读词语、例句等，goldendict一个查询结果页面可以显示多个词典的词条，对多个词条内容的操作也都可以写在一个js里面。**  
最近查的一些词都是完全的生词，想多听听各色发音，懒得一个个点，所以改了改js实现了自动读全部语音，很简单，分享下。  
就是将fy.js里面的fayin函数修改如下：

```auto
	function fayin(){
		for (let i = 0; i < items.length; i++) {
			window.setTimeout(function(){
				items.eq(i).click();
				console.log(i);
			}, 1000 * i);
		}
	}

```

或者解压附件文件后替换词典目录下同名文件。

---

<div class="post-metadata">

作者： ![sheril](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/s/58f4c7/32.png) [@sheril](https://forum.freemdict.com/u/sheril)\
发布日期： [2021 年7 月 14 日 02:27 UTC](https://forum.freemdict.com/t/topic/7226/2 "2021-07-14T02:27:53Z")

</div>

肿么办，我在电脑上用发音自动都有没有了

---

<div class="post-metadata">

作者： ![LeaParda](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/leaparda/32/18691_2.png) [@LeaParda](https://forum.freemdict.com/u/LeaParda)\
发布日期： [2021 年7 月 14 日 03:32 UTC](https://forum.freemdict.com/t/topic/7226/3 "2021-07-14T03:32:31Z")

</div>

什么情况？有还是没有？替换js后出情况了吗？

---

<div class="post-metadata">

作者： ![sheril](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/s/58f4c7/32.png) [@sheril](https://forum.freemdict.com/u/sheril)\
发布日期： [2021 年7 月 14 日 03:49 UTC](https://forum.freemdict.com/t/topic/7226/4 "2021-07-14T03:49:23Z")

</div>

是的，发音图标都消失了，是替换后才出现的，用原来的js就恢复了

---

<div class="post-metadata">

作者： ![LeaParda](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/leaparda/32/18691_2.png) [@LeaParda](https://forum.freemdict.com/u/LeaParda)\
发布日期： [2021 年7 月 14 日 03:52 UTC](https://forum.freemdict.com/t/topic/7226/5 "2021-07-14T03:52:30Z")

</div>

能不能把你js发上来看下，然后也发下控制台下的输出截图（F12后点击Console面板）

---

<div class="post-metadata">

作者： ![sheril](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/s/58f4c7/32.png) [@sheril](https://forum.freemdict.com/u/sheril)\
发布日期： [2021 年7 月 14 日 03:57 UTC](https://forum.freemdict.com/t/topic/7226/6 "2021-07-14T03:57:23Z")

</div>

我用的是欧路词典，好像没有那个console面板，这个是我用的js，我用网盘传给你，直接上传到论坛失败了  
链接：[https://pan.baidu.com/s/1VPJ2JUvNqpfa1FY0Yl3jOA](https://pan.baidu.com/s/1VPJ2JUvNqpfa1FY0Yl3jOA)  
提取码：1111  
–来自百度网盘超级会员V6的分享

---

<div class="post-metadata">

作者： ![LeaParda](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/leaparda/32/18691_2.png) [@LeaParda](https://forum.freemdict.com/u/LeaParda)\
发布日期： [2021 年7 月 14 日 04:03 UTC](https://forum.freemdict.com/t/topic/7226/7 "2021-07-14T04:03:14Z")

</div>

抱歉我疏忽了，我发帖时忘记标明只在goldendict测试了，因为用习惯了没有考虑到别的词典软件的情况。  
你这个js，就是原版的，如果用了附件的js出现问题，猜测可能跟欧路js引擎对let语法的支持有关系，因为这个替换的函数除了这个语法，没有别的特殊之处。

---

<div class="post-metadata">

作者： ![sheril](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/s/58f4c7/32.png) [@sheril](https://forum.freemdict.com/u/sheril)\
发布日期： [2021 年7 月 14 日 04:05 UTC](https://forum.freemdict.com/t/topic/7226/8 "2021-07-14T04:05:48Z")

</div>

哦哦，原来是这样

---

<div class="post-metadata">

作者： ![yzh979](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/y/a587f6/32.png) [@yzh979](https://forum.freemdict.com/u/yzh979)\
发布日期： [2021 年8 月 12 日 07:05 UTC](https://forum.freemdict.com/t/topic/7226/9 "2021-08-12T07:05:56Z")

</div>

能不能帮忙再修改一下，能在Mdict也可以用的。

---

<div class="post-metadata">

作者： ![LeaParda](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/leaparda/32/18691_2.png) [@LeaParda](https://forum.freemdict.com/u/LeaParda)\
发布日期： [2021 年8 月 12 日 07:52 UTC](https://forum.freemdict.com/t/topic/7226/10 "2021-08-12T07:52:40Z")

</div>

改了下，我测试ok，你试试：  
方案1，更改原版的fayin函数如下：

```auto
	function fayin(){
		for (var i = 0; i < items.length; i++) {
		  (function (i) {
		    setTimeout(function () {
		    	items.get(i).parentElement.style.backgroundColor="yellow";
				items.eq(i).click();
		    }, 1000 * (i + 1));
		  })(i);
		}
		// for goldendict only
		// for (let i = 0; i < items.length; i++) {
		// window.setTimeout(function(){
		// items.get(i).parentElement.style.backgroundColor="yellow";
		// items.eq(i).click();
		// console.log(i);
		// }, 1000 * (i + 1));
		// }
	}

```

方案2：  
下载附件文件替换原fy.js文件  
[fy.zip](https://forum.freemdict.com/uploads/short-url/s5FYCAEQptnvGIO3lc24QGc8eI0.zip) (31.6 KB)

---

<div class="post-metadata">

作者： ![LeaParda](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/leaparda/32/18691_2.png) [@LeaParda](https://forum.freemdict.com/u/LeaParda)\
发布日期： [2021 年8 月 12 日 07:55 UTC](https://forum.freemdict.com/t/topic/7226/11 "2021-08-12T07:55:04Z")

</div>

@sheril Mdict的浏览器引擎是IE，欧陆可能也是，所以不（完全）支持ES6的let语法，导致了原来的问题。现在的方案应该不存在此类问题了。有问题请再反馈。

---

<div class="post-metadata">

作者： ![sheril](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/s/58f4c7/32.png) [@sheril](https://forum.freemdict.com/u/sheril)\
发布日期： [2021 年8 月 12 日 09:51 UTC](https://forum.freemdict.com/t/topic/7226/12 "2021-08-12T09:51:15Z")

</div>

好的，谢谢 ❤ ❤ ❤ ❤

---

<div class="post-metadata">

作者： ![sheril](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/s/58f4c7/32.png) [@sheril](https://forum.freemdict.com/u/sheril)\
发布日期： [2021 年8 月 12 日 11:36 UTC](https://forum.freemdict.com/t/topic/7226/13 "2021-08-12T11:36:38Z")

</div>

试了一下，发现在手机的欧路词典上好像无法适用

---

<div class="post-metadata">

作者： ![LeaParda](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/leaparda/32/18691_2.png) [@LeaParda](https://forum.freemdict.com/u/LeaParda)\
发布日期： [2021 年8 月 12 日 12:07 UTC](https://forum.freemdict.com/t/topic/7226/14 "2021-08-12T12:07:15Z")

</div>

是吗，我没用过欧陆，手机端可能是用webview，我了解下再说。桌面版试过可以吗？

---

<div class="post-metadata">

作者： ![sheril](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/s/58f4c7/32.png) [@sheril](https://forum.freemdict.com/u/sheril)\
发布日期： [2021 年8 月 21 日 08:44 UTC](https://forum.freemdict.com/t/topic/7226/15 "2021-08-21T08:44:02Z")

</div>

sorry，现在才看到，电脑端是没有什么问题的，挺好的。

---

<div class="post-metadata">

作者： ![Weiang](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/w/ac91a4/32.png) [@Weiang](https://forum.freemdict.com/u/Weiang)\
发布日期： [2022 年4 月 11 日 11:00 UTC](https://forum.freemdict.com/t/topic/7226/16 "2022-04-11T11:00:31Z")

</div>

ipad没效果
