随笔 - 11  文章 - 0 评论 - 14 trackbacks - 0
<2008年4月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

Locations of visitors to this page

与我联系

搜索

 

常用链接

留言簿

我的标签

随笔分类

随笔档案

相册

收藏夹

CSDN

积分与排名

  • 积分 - 3740
  • 排名 - 5956

最新评论

阅读排行榜

评论排行榜

在CSDN上,看到有人问这个问题。就是若把页面右键屏蔽的话,文本框上的右键菜单同样也给屏蔽,问如何能够将文本框的右键菜单显示出来。
解决思路:首先,要在页面初始化时将页面右键菜单屏蔽
其 次,在欲解除右键限制的文本框获得焦点时,启用页面document的右键菜单。可以用在文本框中的onmousedown事件中,但推荐用在 onfocus事件中,若使用的onmousedown的话,则按键盘上摸拟右键的按键(在右win键右边)不响应;若用onfocus事件,则能顺利响 应。
最后,当该文本框失去焦点时,需将页面document的右键菜单屏蔽,用文本框的onblur事件即可。
要注意的是IE和Firefox的兼容性问题:
页面初始化时,若使用这样的语句
<body oncontextmenu="return false;">

则在IE中没有影响,但Firefox中文本框右键菜单不能显示。
使用下列语句:
<body onload="hidemenu();">

将oncontext处理代码写在函数中,IE和Firefox中均能正常响应。
下面是测试页面的源代码:
<html>
<head>
<title>屏蔽页面右键,但不屏蔽某HTML元素的右键响应</title>
<script language="javascript">
    
function hidemenu()
    
{
        document.oncontextmenu 
= function(){return false;}
    }

    
    
function showmenu()
    
{
        document.oncontextmenu 
= function(){return true;}
    }

</script>
</head>
<body onload="hidemenu();">
响应右键:
<input type="text" id="text1" onfocus="showmenu();" onblur="hidemenu();">
<br>
不响应右键:
<input type="text" id="text2">
</body>
</html>

源代码: http://files.cnblogs.com/redleaf1995/right.rar
posted on 2008-04-25 11:02 红色枫叶 阅读(304) 评论(3)  编辑 收藏 所属分类: javascript、Web页面设计开发

FeedBack:
#1楼  2008-04-25 11:12 Prewin      
.net新手群。60679146新鲜创建。常期在线,刻苦提高,分享进度,共同进步!广告时间多有不便,还望包涵

每过几天时间都会有一个专题,希望大家踊跃讨论
分享好的文章,帖子
今日专题:反射 2008年4月25日
  回复  引用  查看    
#2楼  2008-04-25 11:40 晕333 [未注册用户]
用firefox禁用js脚本,看你禁
  回复  引用    
#3楼  2008-04-25 13:24 簡簡單單..      
哈哈! 这种方法不好..
  回复  引用  查看    

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      


相关链接: