在bookmarklet中设置HTML元素的宽度

时间:2014-04-03 05:11:45

标签: javascript bookmarklet

我喜欢使用Outlook.com中内置的Messenger,而不是仅仅为了发送消息而安装Skype。为了让信使占据窗口的整个宽度(然后我放在一边)我破解了两个div的宽度。

为了实现自动化,我在Chrome's snippets tool中编写了这个javascript代码段并且效果很好:

document.getElementById("sidebar").style.width = "100%";
document.getElementsByClassName("RecentConversationsControl_Container")[0].style.width = "100%";

enter image description here

我尝试将其转换为书签:

javascript:document.getElementById("sidebar").style.width="100%";document.getElementsByClassName("RecentConversationsControl_Container")[0].style.width="100%";

但是当我点击书签时,页面变为白色并在左上角显示文本“100%”。它几乎就像它设置了内文或其他东西。

enter image description here

有谁知道为什么我的bookmarklet与片段的工作方式不同?


*这是我的工作书签:

javascript:(function(){document.getElementById("sidebar").style.width="100%";document.getElementsByClassName("RecentConversationsControl_Container")[0].style.width="100%";if(upsell=document.getElementsByClassName("Close c_nobdr t_prs")[0]){upsell.click()};var a=[].slice.call(document.getElementsByClassName("RecentConversationsControl_MessageText"));for(var i=0, length=a.length; i<length; i++){a[i].style.width="80%"};})()

1 个答案:

答案 0 :(得分:1)

最佳做法:javascript:(function(){/*your code*/})()

最简单:javascript:/*your code*/;void(0);