柚子Nan--回归原点

Everything can be as easy as you like or as complex as you need.
posts - 233, comments - 985, trackbacks - 17, articles - 29
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

在开发一个Asp.net系统的时候,经常需要自己订制浏览器的菜单,工具栏。

在最近的一个项目中,正好有机会负责了这个部分。

菜单使用的是AspNetMenu,好像不是很稳定,而且页面的刷新也很严重

工具栏使用的Microsoft提供的IEWebControl,工具栏效果不错,只是有时候会丢失事件,(郁闷,好像.net框架中经常会发生事件丢失)。

这些东西暂且不说,以后会有很多机会的,今天在网上找了些资料,如何屏蔽开发的系统中的
F5,Ctrl+N,Alt+F4等等比较关键的键值,呵呵,还真是好运。在csdn上还真的发现了不少的资源。

http://expert.csdn.net/Expert/topic/2803/2803108.xml?temp=3.307742E-02

http://expert.csdn.net/Expert/topic/2997/2997482.xml?temp=.2344324

在此感谢两位作者和各个回答的热心人:)

<script language="javascript">

              function DisableKey()

              {

                     //8   退格键

                     //78  Ctrl+N

                     //37  Alt+ 方向键

                     //39  Alt+ 方向键

                     //116       F5 刷新键

                     //82  Ctrl + R

                     //121       shift+F10

                     //115       屏蔽Alt+F4

                     //屏蔽 shift 加鼠标左键新开一网页

                     if (window.event.keyCode==8

                            ||event.keyCode==78

                            ||event.keyCode==37

                            ||event.keyCode==39

                            ||event.keyCode==116

                            ||event.keyCode==82

                            ||event.keyCode==121

                            ||event.keyCode==115

                            ||(window.event.srcElement.tagName == "A" && window.event.shiftKey))

                            {

                                   alert('请通过事物代码进行操作!');

                                   window.event.returnValue=false;

                            }

                    

              }

       </script>

       </HEAD>

       < body MS_POSITIONING="GridLayout" onKeyDown="DisableKey()">

……………………

上边的代码基本上已经实现了,所需要屏蔽的键值。
好像已经完成了工作,但是是否每个页面都要复制这些代码呢?还在考虑之中!
请各位高手指点,应该可以说是一个如何架构系统界面的问题了:)
一个春天 你的文章,ASP.NET主界面框架对于这个问题有什么高见?

Feedback

#1楼    回复  引用  查看    

2004-04-26 14:05 by 乐色.Net      
由页面基类来输入即可。

#2楼    回复  引用  查看    

2004-04-26 15:10 by 柚子nan      
我的页面结构
一个主框架页面MainFrame.aspx
在本页的最上边Menu
中间IFrame(MiddleFrame),分为左右结构,Left(Tree),Right(系统公告页面)。当点击某个Tree节点,把MiddleFrame整体替换成一个页面(operate.aspx)
下边IFrame(BottomFrame),页脚数据。
那么我屏蔽Alt+F4,F5,要把那些代码放在哪里?

#3楼    回复  引用  查看    

2004-04-26 23:49 by Samuel      
good job.
我很快就会做和你同样的事了。

#4楼    回复  引用  查看    

2004-04-29 20:32 by aspring      
呵呵,这两天忙着和客户讨论需求呢。没上blog.没想到还有这个问题。
这个问题感觉真的不大好解决。我现在想的一个办法是
用<object onKeyDown="DisableKey"> </object>标志。还没有验证其可行性。明天试验一下看再发一个消息给你。

#5楼    回复  引用  查看    

2004-04-30 08:39 by 一个春天      

我试验了一下,如果加下面这句话,就没有问题了:
                    
if (window.event.keyCode==8

                            ||event.keyCode==78

                            ||event.keyCode==37

                            ||event.keyCode==39

                            ||event.keyCode==116

                            ||event.keyCode==82

                            ||event.keyCode==121

                            ||event.keyCode==115

                            ||(window.event.srcElement.tagName == "A" && window.event.shiftKey))

                            {

                                   alert('请通过事物代码进行操作!');
                                 
                                   event.keyCode = 0;

                                   window.event.returnValue=false;

                            }

究其原因,页面中的OnKeyDown中截获的键盘事件,还要传递到页面中的各个元素,如果不在这里处理掉的话可能还会继续触发。不知是否正确,供参考。

 

另外,用<object>的方法嵌入网页:
"   <object id="doc_html" style="LEFT: 0px; TOP: 0px" data="http://www.cnblogs.com/aspring/" width="544"
   height="320" type="text/x-scriptlet" viewastext onKeyDown="document_onkeydown">   “

#6楼    回复  引用    

2004-11-12 13:36 by 平凡 [未注册用户]
可这样的方法,我怎么就不能用呀,我用的是WEBSHPERE呀,请高手指教.

#7楼    回复  引用    

2004-11-12 13:49 by 平凡 [未注册用户]
IE6现在已经不支持这种方法了,各位老大,有没有IE6支持的方法呀




#8楼    回复  引用    

2004-11-12 13:50 by 平凡 [未注册用户]
???????????????????










????????????????????

#9楼    回复  引用    

2004-11-20 01:04 by 路过的 [未注册用户]
window.event.returnValue=false;
改成
return false;
试试看吧




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

相关文章:

相关链接: