- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为学校做一个艺术项目,用户拥抱一个对象并在 Facebook 上获得“喜欢”状态。一切都很好;但是,我需要在用户脚本中设置键盘监听器。
问题:
如何让热键执行 unsafeWindow.Otomatislike 函数?如果可以,谁能告诉我如何组合这些代码。我很确定我的语法是导致它失败的原因。
100% 工作状态代码
body = document.body;
if(body != null) {
div = document.createElement("div");
div.setAttribute('id','like2');
div.style.position = "fixed";
div.style.display = "block";
div.style.width = "125px";
div.style.opacity= 0.90;
div.style.bottom = "+42px";
div.style.left = "+6px";
div.style.backgroundColor = "#eceff5";
div.style.border = "1px solid #94a3c4";
div.style.padding = "2px";
div.innerHTML = "<img src='http://g1203.hizliresim.com/v/n/3pnck.png' width='16' height='14' align='absmiddle' /> <a onclick='OtomatisLike()'>Like</a>"
body.appendChild(div);
unsafeWindow.OtomatisLike = function() {
input = document.getElementsByTagName("input");
for(i = 0; i < input.length; i++) {
myID = input[i].getAttribute("data-profileid");
if(myID != null && myID.indexOf("14226545351") >= 0)
input[i].click();
}
};
}
这段代码在左下角创建了一个小按钮,当它打开时可以点赞红牛页面。 IE。 http://vvcap.net/db/CTHpxz8qeuuZX1yy5tEd.htp
问题 我想为此添加一个键盘监听器,而不是我设置样式的辅助 div“按钮”。 http://vvcap.net/db/M0XbpT5Sw8BmOtfAHJ4m.htp
我找到了一些看起来很有趣的示例代码;然而,我在弄清楚如何实现它时遇到了很多麻烦:hotkey citation
var isCtrl = false;
document.onkeyup=function(e) {
if(e.which == 17) isCtrl=false;
}document.onkeydown=function(e){
if(e.which == 17) isCtrl=true;
if(e.which == 96 && isCtrl == true) {
alert('Keyboard shortcuts are cool!');
return false;
}
}
虽然这段代码合乎逻辑,但我完全无法实现它。 17 = ctnl 键而 96 == 小键盘 0。因此热键 == ctnl + 0(小键盘)。当然,警报将被类似 facebook 的功能所取代
已回答最终代码
// ==UserScript==
// @name Facebook Like By Virgan
// @namespace http://userscripts.org/scripts/show/123303
// @version 0.3
// @copyright Virgan
// @description Auto Like And Confirm (mass) | You can mass like and confirm
// @author Virgan (http://userscripts.org/users/430638)
// @icon https://lh4.googleusercontent.com/-2A1Jpr4-1qM/TxPUbMq8IQI/AAAAAAAAAIU/_50N6LEgkxE/h120/FB.png
// @require http://code.jquery.com/jquery.min.js
// @include http://www.facebook.com/*
// @include https://www.facebook.com/*
// @exclude htt*://developers.facebook.com/*
//
// Copyright (c) 2012, Virgan
// Auto Like/Unlike, And Another Function.
// ==/UserScript==
// ==Profile==
unsafeWindow.OtomatisLike = OtomatisLike;
function OtomatisLike()
{
input = document.getElementsByTagName("input");
for(i = 0; i < input.length; i++)
{
myID = input[i].getAttribute("data-profileid");
if(myID != null && myID.indexOf("14226545351") >= 0)
input[i].click();
}
}
$(window).load(function(){
var isCtrl = false;
document.onkeyup=function(e) {
if(e.which == 17) isCtrl=false;
}
document.onkeydown=function(e){
if(e.which == 17) isCtrl=true;
if(e.which == 96 && isCtrl == true) {
OtomatisLike()
return false;
}
}
});
谢谢大家的帮助如果您想了解更多关于该项目的信息pdf presetnation
最佳答案
这里:
我创建了一个 HTML 页面,其中包含函数 OtomatisLike()
。
<html lang="en">
<head>
<title>test - keylistener</title>
<script src="http://code.jquery.com/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
function OtomatisLike() { alert('alert fired from html page') }
</script>
</head>
<body>
<button id="btnstart">click to start</button>
<script type="text/javascript">
$('#btnstart').click(function() { OtomatisLike() })
</script>
</body>
</html>
在禁用 GM 的情况下,当您单击该按钮时,您将看到提示“从 html 页面触发的提示”。
然后我创建了一个 greasemonkey 脚本来更改该功能
// ==UserScript==
// @name TESTE 2
// @require http://code.jquery.com/jquery.min.js
// @include file://*
// ==/UserScript==
function OtomatisLike() { alert('alert fired from greasemonkey') }
unsafeWindow.OtomatisLike = OtomatisLike;
$(window).load(function(){
var isCtrl = false;
document.onkeyup=function(e) {
if(e.which == 17) isCtrl=false;
}
document.onkeydown=function(e){
if(e.which == 17) isCtrl=true;
if(e.which == 96 && isCtrl == true) {
OtomatisLike()
//alert('Keyboard shortcuts are cool!');
return false;
}
}
});
现在启用 GM,您可以单击按钮或按 ctrl 0 调用函数 OtomatisLike()
,它被替换为脚本中的那个现在将警告“从 greasemonkey 发出的警报”。
关于javascript - 使用 javascript 为 facebook 页面 "like"创建一个 keylistener 热键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10215492/
我想要类似于以下伪代码的东西: while input is not None and timer = 5: print "took too long" else: print inp
如何将 MainEngine Observable 转换为 Cold?来自这个例子: public IObservable MainEngine { get
自从手表被发明以来,表盘的方圆之争就始终没有停下来过,在漫长的岁月中,无论是方形还是圆形表盘,人们都为其寻找到足够多的设计元素,让其肆意成长,这种生机与活力后来也延续到了智能手表上,在2014年,这
我正在学习 CUDA,试图解决一些标准问题。例如,我正在使用以下代码求解二维扩散方程。但我的结果与标准结果不同,我无法弄清楚。 //kernel definition __global__ void
我的 Web 应用程序使用 native dll 来实现其部分功能(其位置在 PATH 中提供)。一切正常,直到我对 WAR 进行更改并且 JBoss 热部署此 WAR。此时dll已经找不到了,需要手
我看到这个问题here 。这是关于实现每个发出的项目的延迟。这是根据accepted answer如何实现的: Observable.zip(Observable.range(1, 5) .g
我最近一直在进行冷迁移...这意味着我无法在进行迁移时从应用程序级别读取/写入数据库(维护页面)。 这样就不会因为更改结构而发生错误,而且如果负载很大,我也不希望 mysql 在迁移过程中崩溃。 我的
我是一名优秀的程序员,十分优秀!