键盘控制级联菜单

<html>
<head>
<title>键盘控制级联菜单</title>
<style type="text/css">
input {border:1px solid #fff; background:#fff; }
input {star : expression(
onmouseover=function(){this.style.backgroundColor="#eee"},
onmouseout=function(){this.style.backgroundColor="#fff"})}
.in40 {width:40px;}
.in80 {width:80px;}
.in120 {width:120px;}
.in200 {width:200px;}
</style>
<script defer>
var root=["menu1","menu2","menu3"];
var menu1=["menu1.1","menu1.2"];
var menu2=["menu2.1","menu2.2"];
var menu3=["menu3.1","menu3.2"];
var obj=document.getElementsByTagName("input");
var urlpath = "";
for(var i=0;i<obj.length;i++){
 if(obj[i].input){
  obj[i].focus();
  break;
 }
}
document.onkeydown=function(){
 try{
  if(event.keyCode==13){
   window.open(urlpath);
  }
  if(event.keycode == 27){
   window.closed();
  }
  if(event.keyCode==40){//下
   if(event.srcElement.submenu){
    if(document.getElementById(event.srcElement.submenu).style.display=="block"){
     var arr=eval(event.srcElement.name);
     document.getElementsByName(arr[0])[0].focus();
    }else{
     var parentMenu=event.srcElement.parentMenu;
     var selfName=event.srcElement.name;
     var arr=eval(event.srcElement.parentMenu);
     var n;
     for(var i=0;i<arr.length;i++){
      if(arr[i]==selfName){
       n=i;
       break;
      }
     }
     if(n!=arr.length-1){
      document.getElementsByName(arr[n+1])[0].focus();
     }  
    }
   }else{
    var parentMenu=event.srcElement.parentMenu;
    var selfName=event.srcElement.name;
    var arr=eval(parentMenu);
    var n;
    for(var i=0;i<arr.length;i++){
     if(arr[i]==selfName){
      n=i;
      break;
     }
    }
    if(n!=arr.length-1){
     document.getElementsByName(arr[n+1])[0].focus();
    }else{
     selfName=parentMenu;
     parentMenu=document.getElementsByName(parentMenu)[0].parentMenu;
     var arr=eval(parentMenu);
     var n;
     for(var i=0;i<arr.length;i++){
      if(arr[i]==selfName){
       n=i;
       break;
      }
     }
     if(n!=arr.length-1){
      document.getElementsByName(arr[n+1])[0].focus();
     }
    }
   }
  }
  else if(event.keyCode==38){//上
   var parentMenu=event.srcElement.parentMenu;
   var selfName=event.srcElement.name;
   var arr=eval(event.srcElement.parentMenu);
   var n;
   for(var i=0;i<arr.length;i++){
    if(arr[i]==selfName){
     n=i;
     break;
    }
   }
   if(n>0){
    var preMenu=document.getElementsByName(arr[n-1])[0];
    if(preMenu.submenu){
     var preSubDiv=document.getElementById(preMenu.submenu);
     if(preSubDiv.style.display=="none"){
      preMenu.focus();
     }else{
      var preSubArr=eval(arr[n-1]);
      var focusMenu=document.getElementsByName(preSubArr[preSubArr.length-1])[0];
      focusMenu.focus();
     }
    }else{
     preMenu.focus();
    }
   }else{
    if(parentMenu!="root"){
     document.getElementsByName(parentMenu)[0].focus();
    }
   }
  }
  else if(event.keyCode==37){//左
   if(event.srcElement.submenu){
    document.getElementById(event.srcElement.submenu).style.display="none";
   }
  }
  else if(event.keyCode==39){//右
   if(event.srcElement.submenu){
    document.getElementById(event.srcElement.submenu).style.display="block";
    }
  }
 }catch(e){
 }
}

function url(obj){
urlpath =obj.value;
}
</script>
</head>
<body>
键盘控制级联菜单演示:
<div style="position:absolute;left:10px;top:50px">
<input type=text name="menu1" class="in200" submenu="submenu1" parentMenu="root" value="http://www.google.com" onfocus="this.select();url(this)" size="40" readonly="readonly"><br>
<div id="submenu1" style="display:none">
<input type=text name="menu1.1" parentMenu="menu1" class="in80" value="    菜单1.1" onfocus="this.select();url(this)" readonly="readonly"><br/>
<input type=text name="menu1.2" parentMenu="menu1" class="in80" value="    菜单1.2" onfocus="this.select();url(this)" readonly="readonly">
</div>
<input type=text name="menu2" class="in200" submenu="submenu2" parentMenu="root" value="http://www.google.com" onfocus="this.select();url(this)" size="40" readonly="readonly"><br>
<div id="submenu2" style="display:none">
<input type=text name="menu2.1" parentMenu="menu2" class="in80" value="    菜单2.1" onfocus="this.select();url(this)" readonly="readonly"><br>
<input type=text name="menu2.2" parentMenu="menu2" class="in80" value="    菜单2.2" onfocus="this.select();url(this)" readonly="readonly">
</div>
<input type=text name="menu3" class="in200" submenu="submenu3" parentMenu="root" value="http://www.google.com" onfocus="this.select();url(this)" size="40" readonly="readonly">
<div id="submenu3" style="display:none">
<input type=text name="menu3.1" parentMenu="menu3" class="in80" value="    菜单3.1" onfocus="this.select();url(this)" readonly="readonly"><br>
<input type=text name="menu3.2" parentMenu="menu3" class="in80" value="    菜单3.2" onfocus="this.select();url(this)" readonly="readonly">
</div>
</div>
</body>
</html> 

03-08
### MathPix工具介绍 Mathpix Snipping Tool 是一款强大的数学公式识别工具,从最初的原型发展至今已经历了多次迭代和功能增强[^1]。该工具不仅能处理简单的数学表达式,还可以应对复杂的数学模型以及多行公式,并且支持手写公式的识别。 这款应用程序通过不断的科技创新与用户反馈改进,在学术研究和技术领域赢得了良好声誉,成为许多科研人员不可或缺的工作伙伴之一。除了基本的功能外,Mathpix 还提供了多种高级特性来满足不同用户的特定需求。 ### 使用方法 #### 安装与启动 为了使用 Mathpix Snipping Tool ,首先需要下载安装程序并按照提示完成设置过程。一旦成功安装后即可随时调用此应用来进行截图操作。 #### 截取屏幕上的公式图像 当遇到想要转换成 LaTeX 或 AsciiMath 的图片时,只需打开软件界面按下快捷键(默认为 `Ctrl+Alt+M`),此时鼠标指针会变为十字形状以便于选取目标区域;框选所需部分之后松开按键即刻上传至云端服务器等待进一步分析处理。 #### 获取LaTeX代码片段 经过短暂几秒钟的时间延迟过后,所截获的内容将以纯文本形式显示出来供复制粘贴到其他编辑器当中继续编写文档或是分享给他人查看交流之用。 ```python import pyperclip # 假设已获取到LaTeX字符串 stored_in_variable named latex_code pyperclip.copy(latex_code) print("LaTeX code has been copied to clipboard.") ``` 对于希望深入探索更多可能性的用户来说,可以考虑查阅官方提供的扩展插件——如用于解析Markdown文件内的公式标记语法的库 **mathpix-markdown-it** [^2] ——这将进一步提升工作效率和个人体验感。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值