第
利用JavaScript编写Python内置函数查询工具
目录一、程序效果展示二、程序编写过程最近在学习Python语言,Python有丰富的内置函数实现各种功能,但查询内置函数时总是需要百度查,有没有一个小工具可以单机无网络查询Python内置函数,方便自己学习编写Python程序呢?在网上查了一下好像没有,那就自己做一个吧,结合以前自己用Javascript写过的8086汇编指令查询小工具,只需要稍微改动就可以了。
一、程序效果展示
输入字母会自动出现匹配的下拉列表,控制键盘和键就可以上下移动选择想查看的Python内置函数,如下图。
二、程序编写过程
(一)为方便使用,实现只用一个HTML文件运行,小工具中所有的数据都使用div/div标签进行存放,并直接利用Python内置函数名作为div的id,例如:divid=abs(),以便后续通过id实现快速查找。
比如以下代码:
divid=abs返回一个数的绝对值。参数可以是整数、浮点数或任何实现了__abs__()的对象。如果参数是一个复数,则返回它的模。
/div
(二)使用获取用户在input框输入的字符,每输入一个字符就马上开始字符串匹配,字符串匹配从左到右匹,程忽略字母大小写,并把匹配到的结果用javascript的document.createElement(label)动态生成多个label标签作为下拉列表。主要代码如下:
functionchooseMenu(){
//获得输入框的值
varstr=document.getElementById(input).value;
//获得标签名为div的数组,把首地址给divs
vardivs=document.getElementsByTagName(div);
vardiv_di;
vartemplabel;
var_style_top=0;
//把choose层里面的子节点清空
clearAllNode($(choose));
if(str!=){
//如果输入框的值不为空,执行以下循环
for(vari=2;idivs.length;i++){
//getAttribute方法获得divs[i]节点属性id的值
div_id=divs[i].getAttribute(id);
//如果字串str在主串div_id中出现在第0个位置则添加一个innerHTML为div_id的div到
//choose层
if(div_id.toLowerCase().indexOf(str.toLowerCase())==0){
templabel=document.createElement(label);
templabel.className=suggestions;
templabel.innerHTML=div_id;
templabel.style.visibility=visible;
templabel.style.top=_style_top*20+px;
templabel.style.position=absolute
$(choose).appendChild(templabel);
_style_top++
//添加完choose层的元素后更新show层的元素
if($(choose).firstChild){
show($(choose).firstChild.innerHTML);
$(choose).firstChild.style.backgroundColor=ccc;
count=0;
}else{
show();
$(choose).innerHTML=couldntfind;
}else{
show();
}
(三)监听键盘的和事件,调用键盘事件处理函数,在label前后兄弟节点键来回移动。并更新右侧详细信息页中的内容。
1)使用bodynkeydwn=handleUpAndDown(),为整个页面添加键盘监听事件。bodynkeydwn=handleUpAndDown()
2)编写handleUpAndDown(evt)键盘响应函数,这里需要注意的是charCode=38为键盘键,char
原创力文档

文档评论(0)