Bookmarklet脚本太长,无法创建应用程序快捷方式

时间:2009-08-30 10:07:25

标签: javascript google-chrome bookmarklet

我想出了如何为Google Analytics创建一个书签,该书签打开后立即显示今天的统计数据。我想为此制作一个Google Chrome应用程序快捷方式,与我的其他Google Apps快捷方式一起使用,但第一个问题是它只会创建一个包含当前网址的应用程序,该网站会显示今天的信息,当然明天会显示昨天的信息。我想我会将目标编辑到快捷方式,并用我的javascript替换url。第二个问题是脚本行太长。 Window的快捷方式目标路径只能容纳290个字符或类似的东西。 Chrome以及脚本的路径已经过去了。

此时我有哪些选择?我已经在网上搜索过,浪费了太多时间来度过这么小的一生,但我想弄清楚。

我知道jimmy-squat关于编程。我可以编辑javascript,但不是真的写它。我使用YUI Compressor尝试缩小它,但它没有太大变化。我也尝试过使用url shortener,但是他们都添加了http://前缀并将其搞砸了。我读过我可以指向快捷方式目标中的bat文件,但无法弄清楚如何做到这一点......加上我认为有一种更简单的方法可以做到这一点,不需要任何轻微的黑客攻击,我我想避免。

我可以轻松地在Chrome中为网站添加书签,并使用javascript替换网址,并且工作正常,这是我的目标的一半。但我真的希望将其作为Windows快捷方式,其行为与其他应用程序的工作方式完全相同,因为它们会记住以前的窗口大小。

有关简单解决方案的任何建议吗?

这是bookmarklet的脚本 -

javascript:var d=new Date();if(d.getMonth()<10){var pad='0';};var t=''+d.getFullYear()+(pad+(d.getMonth()+1))+d.getDate();location.href='https://www.google.com/analytics/reporting/dashboard?id=HIDDENID&pdr='+t+'-'+t+'&cmp=average'

此处还有从Chrome浏览器到不同但非常相似的应用程序快捷方式的路径 -

"C:\Documents and Settings\USERPROFILE\Local Settings\Application Data\Google\Chrome\Application\chrome.exe" --app=http://docs.google.com/a/MYGOOGLEAPPSDOMAIN/

1 个答案:

答案 0 :(得分:2)

为什么不创建包含以下内容的本地.html文件:

<script type="text/javascript">
  var d=new Date();
  if(d.getMonth()<10){
   var pad='0';
  }
  var t=''+d.getFullYear()+(pad+(d.getMonth()+1))+d.getDate();  
  location.href='https://www.google.com/analytics/reporting/dashboard?id=HIDDENID&pdr='+t+'-'+t+'&cmp=average'
</script>

然后您可以将其用作“快捷方式”。

%AppData%也可以帮助您从快捷方式中获取更多字符。如果从命令行运行chrome.exe导致打开的窗口类型不同于双击HTML文件,则可能需要在workaround.html上指向chrome.exe

%AppData%\Google\Chrome\Application\chrome.exe --app=file:///c/googleworkaround.html

另外,手动压缩你的一些逻辑导致这个268字符代码高尔夫,这对你来说可能适用也可能不适用。

%AppData%\Google\Chrome\Application\chrome.exe --app=javascript:var d=new Date(),t=[d.getFullYear(),d.getMonth()<9?'0':'',d.getMonth()+1,d.getDate()].join('');location.href='https://www.google.com/analytics/reporting/dashboard?id=HIDDENID&pdr='+t+'-'+t+'&cmp=average';
相关问题