js里面没有直接的右击事件,可采用onmousedown事件进行判断实现。如下:
document.getElementById("test").onmousedown = function(e){if(e.button ==2){
//alert("你点了右键")
//这样设计你的颜色样式...
}else if(e.button ==0){
alert("你点了左键")
}else if(e.button ==1){
alert("你点了滚轮")
}
}
2、数据的过滤方法有很多,javaScript 、jQuery里面的filter函数,鉴于本题,最好采用angularJs实现。总体 参考代码如下:
<!DOCTYPE html><html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js">
</script>
<script type="text/javascript">
window.onload = function(){
//去掉默认的contextmenu事件,否则会和右键事件同时出现。
document.oncontextmenu = function(e){
e.preventDefault()
}
document.getElementById("test").onmousedown = function(e){
if(e.button ==2){
alert("你点了右键")
//这样设计你的颜色样式...
}else if(e.button ==0){
alert("你点了左键")
}else if(e.button ==1){
alert("你点了滚轮")
}
}
}
</script>
</head>
<body>
<div ng-app="myApp" ng-controller="namesCtrl">
<p>输入过滤:</p>
<p><input type="text" ng-model="test"></p>
<ul>
<li ng-repeat="x in names | filter:test | orderBy:'pin'">
{{ (x.name | uppercase) + ', ' + x.pin }}
</li>
</ul>
</div>
<script>
angular.module('myApp', []).controller('namesCtrl', function($scope) {
$scope.names = [
{name:'张三',pin:'zhang san'},
{name:'王斌',pin:'wang bin'},
{name:'张春桥',pin:'zhang chun qiao'},
{name:'王滨',pin:'wang bin'}
]
})
</script>
<div style="width: 600pxheight:50pxmargin:autoborder:1px solid pink" id="test">
<p>朝鲜新建农场</p>
</div>
</body>
</html>
function escKeyPress(){var evObj = document.createEvent('KeyboardEvent')
evObj.initKeyEvent("keypress", true, false, null, false, false, false, false, 27, 0)
var booleanR = document.documentElement.dispatchEvent(evObj)
}
这个是模拟按下esc你可以参考一下
你的目的是不是想用F11这个快捷键来触发某个按钮的onclick事件?如果是这样的话就很简单,给你个例子:
<script>
if(event.keyCode==122) //F11的键值是122
{
doSomeThing()//你自己定义操作
}
</script>
不明白的话HI我。