Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] 点击扩展图标执行动作 #280

Closed
5 tasks
jerry011235 opened this issue Jan 9, 2019 · 7 comments
Closed
5 tasks

[Feature Request] 点击扩展图标执行动作 #280

jerry011235 opened this issue Jan 9, 2019 · 7 comments
Labels
Projects

Comments

@jerry011235
Copy link

jerry011235 commented Jan 9, 2019

你好,请问能否在 Saladict 设置页面(右键扩展图标-选项) 中增加一项:

单击扩展图标后执行的动作

  • 选中后添加生词
  • 谷歌cn网页翻译
  • 百度网页翻译
  • 微软网页翻译
  • 打开Saladict 设置页面
    ……

可以全部不勾选,即不执行单击扩展图标后执行的动作,另外这些虽然右键菜单有,但是点击 扩展图标 快一点。其实就是动作的快速打开方式
现在默认是查词页面,或者改成双击也行。

最后提供两个谷歌当前页的整页翻译的小书签,希望能集成:)

javascript:{d=document;b=d.body;o=d.createElement('scri'+'pt');o.setAttribute('src','https://translate.google.cn/translate_a/element.js?cb=googleTranslateElementInit');o.setAttribute('type','text/javascript');b.appendChild(o);v=b.insertBefore(d.createElement('div'),b.firstChild);v.id='google_translate_element';v.style.cssText="display: block; z-index: 999999999; position: fixed; top: 10px; left: 10px;";p=d.createElement('scri'+'pt');p.text='function googleTranslateElementInit(){new google.translate.TranslateElement({layout: google.translate.TranslateElement.InlineLayout.HORIZONTAL,pageLanguage:"auto",includedLanguages: "zh-CN"},"google_translate_element");}';p.setAttribute('type','text/javascript');b.appendChild(p);}void 0
javascript:(function(){'use strict';var userLang=document.documentElement.lang;if(userLang!==""&&userLang.substr(0,2)!="zh"){var script=document.createElement('script');script.src='//translate.google.cn/translate_a/element.js?cb=googleTranslateElementInit';document.getElementsByTagName('head')[0].appendChild(script);var google_translate_element=document.createElement('div');google_translate_element.id='google_translate_element';google_translate_element.style='position:fixed; top:10px; right:10px; cursor:pointer; z-index: 99999;';document.documentElement.appendChild(google_translate_element);script=document.createElement('script');script.innerHTML="function googleTranslateElementInit() {"+"new google.translate.TranslateElement({"+"layout: google.translate.TranslateElement.InlineLayout.SIMPLE,"+"multilanguagePage: true,"+"pageLanguage: 'auto',"+"includedLanguages: 'zh-CN'"+"}, 'google_translate_element');}";document.getElementsByTagName('head')[0].appendChild(script);}})()

最后感谢开发者,提前拜个早年,也祝愿沙拉查词越来越好!!!

@crimx
Copy link
Owner

crimx commented Jan 9, 2019

你好,谢谢建议!浏览器在扩展图标提供弹出页面的情况下不能监听点击,即两者不能并存,所以没法实现这样的功能了,你可以设置快捷键。

两个小书签我在 Linux 上暂时无法测试,有空再看看能不能集成。

@crimx
Copy link
Owner

crimx commented Jan 9, 2019

也预祝你新年快乐!

@jerry011235
Copy link
Author

你好,谢谢建议!浏览器在扩展图标提供弹出页面的情况下不能监听点击,即两者不能并存,所以没法实现这样的功能了,你可以设置快捷键。

单击扩展图标后执行的动作(只能勾选一项

  • 弹出查词页面(默认)
  • 选中后添加生词
  • 谷歌cn网页翻译
  • 百度网页翻译
  • 微软网页翻译
  • 打开Saladict 设置页面

我的意思是上面这样,单击扩展图标后执行的动作给用户以选择,这不就解决了吗:)

其实我个人目的是 点击扩展图标后执行整页翻译,快捷键很好用,但希望增加谷歌cn,百度,有道等等。

@jerry011235
Copy link
Author

jerry011235 commented Jan 9, 2019

监听双击或者中键 可行否?

@crimx
Copy link
Owner

crimx commented Jan 9, 2019

啊,我刚才表达的不够清楚。弹出页面的“提供”是写死在一个清单文件上的。API 只能修改这个页面,但不能改变这个行为。

@jerry011235
Copy link
Author

jerry011235 commented Jan 9, 2019

哦,没研究过。
但请你看下 下面这几个扩展:
彩云小译 可以 单击扩展图标后执行 一键翻译。
Close My Tabs 可以 单击扩展图标后执行 一键关闭所有标签页,并且同时具有选项界面。
Global Dark Style 可以一键切换夜间模式,Evernote Web Clipper 可以一键剪辑网页。
它们都是执行动作而不是弹出页面,不知道它们是怎么做到的?
当然大多数扩展点击扩展图标后都要弹出页面。

@crimx
Copy link
Owner

crimx commented Jan 9, 2019

hmm,我扒了一下 Close My Tabs 的源码,发现它是通过隐藏整个页面来达到这个效果。我可以考虑考虑。

@crimx crimx added the feature request More work. label Jan 9, 2019
@crimx crimx added this to To Do in Saladict6 Jan 15, 2019
@crimx crimx moved this from To Do to Done in Saladict6 Jan 24, 2019
@crimx crimx closed this as completed in 6672a7a Jan 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Saladict6
  
Done
Development

No branches or pull requests

2 participants