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

存在则更新,不存在则创建

[复制链接]
  • TA的每日心情
    开心
    昨天 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    305

    主题

    4189

    回帖

    4056

    积分

    管理员

    积分
    4056

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 2022-1-30 17:27:51 | 显示全部楼层
    Hangover 发表于 2022-1-30 14:00
    大佬还有别的方案吗
    1.     var TranslationButton = document.body.appendChild(document.createElement("button"));
    2.     TranslationButton.id = "speech-translation";
    3.     TranslationButton.style.position = "fixed";
    4.     TranslationButton.style.display = 'none';
    5.     TranslationButton.innerHTML = '翻译';
    6.     TranslationButton.addEventListener('mouseup', function (e) {
    7.         e.stopPropagation();
    8.     });
    9.     TranslationButton.onclick = function () {
    10.         alert('666');
    11.     };
    12.     document.addEventListener("mouseup", (event) => {
    13.         event = event || window.event;
    14.         var left = event.clientX;
    15.         var top = event.clientY;
    16.         var getSelection = window.getSelection().toString();
    17.         if (getSelection != '') {
    18.             TranslationButton.style.display = 'block';
    19.             TranslationButton.style.left = left + 50 + "px";
    20.             TranslationButton.style.top = top + 0 + "px";
    21.         } else {
    22.             TranslationButton.style.display = 'none';
    23.         }
    24.     });
    复制代码


    var TranslationButton = document.createElement("button");
    document.body.appendChild(TranslationButton);

    放一起
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复
    订阅

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-7-6 11:14
  • 签到天数: 253 天

    [LV.8]以坛为家I

    41

    主题

    318

    回帖

    2178

    积分

    荣誉开发者

    累计点滴改进,迈向完美品质。

    积分
    2178

    荣誉开发者油中2周年生态建设者

    发表于 2022-1-30 18:22:21 | 显示全部楼层
    王一之 发表于 2022-1-30 17:27
    var TranslationButton = document.createElement("button");
    document.body.appendChild(TranslationB ...

    我想要的不仅是性能上的优化,还想知道有没有别的方法能实现,框架除外
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    305

    主题

    4189

    回帖

    4056

    积分

    管理员

    积分
    4056

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 2022-1-30 21:51:09 | 显示全部楼层
    Hangover 发表于 2022-1-30 18:22
    我想要的不仅是性能上的优化,还想知道有没有别的方法能实现,框架除外
    ...

    想不到了
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

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

    [LV.1]初来乍到

    22

    主题

    881

    回帖

    1379

    积分

    荣誉开发者

    积分
    1379

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

    发表于 2022-1-30 22:18:54 | 显示全部楼层
    Hangover 发表于 2022-1-30 14:00
    大佬还有别的方案吗
    1. Translation.style.cssText = `display: block; left: ${left + 50}px; top: ${top + 50}px;`;
    复制代码

    这样?还有把创建元素改成insertAdjacentHTML之类的,不过绑事件比较麻烦,不是很有必要。其他感觉没什么了,硬要说的话,你的命名不太规范,变量的首字母不应该大写,一般是类名才写成这样,有兴趣可以查一下“驼峰命名法”。
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-7-6 11:14
  • 签到天数: 253 天

    [LV.8]以坛为家I

    41

    主题

    318

    回帖

    2178

    积分

    荣誉开发者

    累计点滴改进,迈向完美品质。

    积分
    2178

    荣誉开发者油中2周年生态建设者

    发表于 2022-1-31 00:35:43 来自手机  | 显示全部楼层
    cxxjackie 发表于 2022-1-30 22:18
    这样?还有把创建元素改成insertAdjacentHTML之类的,不过绑事件比较麻烦,不是很有必要。其他感觉没什 ...

    小学英语支撑到现在的我,起变量名靠的是百度翻译,有时候都想直接用abcd代替了。。。感觉不是团队协作的话,啥规范都不太重要吧,不过养成习惯还是好的
    回复

    使用道具 举报

    12
    返回列表 发新帖

    发表回复

    本版积分规则

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