上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖
楼主: 40252492 - 

html里的一段p里带杠n的文本,如何将其放在数组的单引号里正常识别

[复制链接]
  • TA的每日心情

    2023-9-1 16:15
  • 签到天数: 71 天

    [LV.6]常住居民II

    4

    主题

    48

    回帖

    59

    积分

    初级工程师

    积分
    59
    发表于 2023-4-15 19:55:46 | 显示全部楼层 | 阅读模式
    悬赏10油猫币已解决

    本帖最后由 40252492 于 2023-4-15 23:15 编辑

    实例网址
    https://dulst.com/overdulst/cards/48075874/Resonance-Dragon
    油猴脚本
    https://greasyfork.org/zh-CN/scripts/450728-dulst-com%E7%9A%84cardfighit-vanguard-overdulst%E6%96%87%E6%9C%AC%E6%9B%BF%E6%8D%A2%E6%B1%89%E5%8C%96
    实例截图:

    image.png

    请看,这段p的文本里有一个杠n,我的JS脚本里有一个数组,是原文和英文,示意如下
    const fanyi2 = {
    'Dev note:\nCurrently bugged, will get to fixing soon.': '开发说明:目前有bug,很快就会修复。',
    };

    选择器是包含的,其他卡的这段字我检查一下
    选择器:.desc div

    我尝试过一些写法,都不行

    image.png

    刚才群里有个大佬说让我把杠n改成英文书名号套着的br,我试一下啊

    image.png

    试了一下没好。。。

    `T239SL@)WU1F~2W)5~8K(B.png

    最佳答案

    查看完整内容

    [md]有没有可能是你的代码位置写错了 ![image](https://user-images.githubusercontent.com/38517192/232223514-7d78e6d0-5454-416f-8c77-369d2965430c.png) 你把 `'.desc div'+` 从 `xunanzeqi3` 移动到 `xunanzeqi2` 后面试试 --- 还有你这个文件太大了,越来越难维护,找个 bug 都要上下来回移动很多行 随便找个构建工具模块化构建吧,会轻松很多的[/md] ...

    该用户从未签到

    0

    主题

    60

    回帖

    89

    积分

    初级工程师

    积分
    89
    发表于 2023-4-15 19:55:47 | 显示全部楼层

    有没有可能是你的代码位置写错了

    image

    你把 '.desc div'+xunanzeqi3 移动到 xunanzeqi2 后面试试


    还有你这个文件太大了,越来越难维护,找个 bug 都要上下来回移动很多行

    随便找个构建工具模块化构建吧,会轻松很多的

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    883

    回帖

    1381

    积分

    荣誉开发者

    积分
    1381

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2023-4-15 21:33:48 | 显示全部楼层
    看了一下,你放错地方了,用xuanzeqi3去识别fanyi2里的文本,挪个位置就正常了。
    回复

    使用道具 举报

  • TA的每日心情

    2023-9-1 16:15
  • 签到天数: 71 天

    [LV.6]常住居民II

    4

    主题

    48

    回帖

    59

    积分

    初级工程师

    积分
    59
    发表于 2023-4-15 23:27:04 | 显示全部楼层

    本帖最后由 40252492 于 2023-4-15 23:28 编辑

    有没有可能是你的代码位置写错了

    !(https://user-images.githubusercontent.com/38517192/232223514-7 ...[/quote]
    谢谢您帮我找到了BUG,我完全没有想到会是这样。

    ===碎碎念,可以不看===
    我有数组123和选择器123,卡文下面的备注(就是禁限卡表和说明)我放到“选择器3”里了,但是其文本在的数组“翻译2”里
    这是我在考虑了未来无线增长的卡池(文本数量)之后,按照上一个提问帖的大佬的建议【将数组和选择器拆分成了3部分,把最多的卡名和卡文单拎出来放2个选择器】之后造成的。
    简单来说就是选择器和文本没对上。。。{:4_89:}

    ======看这里啦↓Q3Q
    然后,现在数组1有1300行,数组2有1500行,每次更新不只是在底部增加,中间也会加,所以每次更新我都会从数组的头扩到尾,从excel里把公式合成的结果粘过来。
    数组1和2的行数平均每3个月共计会增加300行,我确实很需要“找个构建工具来模块化构建”,但是我不是从事这个行业的,我不知道有什么好用的,能请您推荐我一个您惯用或者适合我的吗?{:4_113:}谢谢/p>

    回复

    使用道具 举报

  • TA的每日心情

    2023-9-1 16:15
  • 签到天数: 71 天

    [LV.6]常住居民II

    4

    主题

    48

    回帖

    59

    积分

    初级工程师

    积分
    59
    发表于 2023-4-15 23:34:11 | 显示全部楼层
    cxxjackie 发表于 2023-4-15 21:33
    看了一下,你放错地方了,用xuanzeqi3去识别fanyi2里的文本,挪个位置就正常了。 ...

    哈哈哈,又见面了大佬,缘分啊!(因为咱们比较熟,加上他先来的,我就采纳他了哦Q3Q)

    这个问题是我采纳了您的建议【将数组和选择器拆分成了3部分,把最多的卡名和卡文单拎出来放2个选择器】之后造成的,是我疏忽了。
    然后楼上的推荐的“找个构建工具来模块化构建”,您有什么推荐的嘛QvQ
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    60

    回帖

    89

    积分

    初级工程师

    积分
    89
    发表于 2023-4-16 01:02:29 | 显示全部楼层

    40252492 发表于 2023-4-15 23:27

    谢谢您帮我找到了BUG,我完全没有想到会是这样。

    ===碎碎念,可以不看===

    我确实很需要“找个构建工具来模块化构建”,但是我不是从事这个行业的,我不知道有什么好用的,能请您推荐我一个您惯用或者适合我的吗?

    你可以使用 vite-plugin-monkey 来构建

    我是这个项目的作者,有什么问题可以在 discussions 提出

    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    883

    回帖

    1381

    积分

    荣誉开发者

    积分
    1381

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2023-4-16 22:24:09 | 显示全部楼层
    40252492 发表于 2023-4-15 23:34
    哈哈哈,又见面了大佬,缘分啊!(因为咱们比较熟,加上他先来的,我就采纳他了哦Q3Q)

    这个问题是我采 ...

    工具这个你还是请教作者吧,其实油猴本身也有解决方案,就是把翻译文本抽离出来作为外部资源引入,比如以库的形式上传到gf,然后脚本去引用他。假设你的翻译库叫translation.js,这是库内容:
    1. var translation = `
    2. .class1
    3. English1
    4. 中文1
    5. English2
    6. 中文2

    7. .class2
    8. English3
    9. 中文3
    10. English4
    11. 中文4
    12. `;
    复制代码

    按选择器分好类,然后选择器之间用一个空行隔开。这是脚本内容:
    1. // ==UserScript==
    2. // ...
    3. // @require      .../translation.js
    4. // ==/UserScript==

    5. (function() {
    6.     'use strict';
    7.     for (const str of translation.trim().split('\n\n')) {
    8.         const parts = str.split('\n');
    9.         const selector = parts.shift();
    10.         const en = parts.filter((v, k) => k % 2 === 0);
    11.         const ch = parts.filter((v, k) => k % 2 !== 0);
    12.         elmGetter.each(selector, el => {
    13.             const index = en.indexOf(el.innerText);
    14.             if (index > -1) {
    15.                 el.innerText = ch[index];
    16.             }
    17.         });
    18.     }
    19. })();
    复制代码

    这个就是把翻译文本解析成需要的格式,涉及一些数组操作。更新的时候是先更新你的库,然后脚本里改引用的库版本号即可。
    回复

    使用道具 举报

    发表回复

    本版积分规则

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