`
wdlisoft
  • 浏览: 47302 次
  • 性别: Icon_minigender_1
  • 来自: 常州
最近访客 更多访客>>
社区版块
存档分类
最新评论

js实现图片下拉列表

阅读更多

因为现在开发的一个网站有用到,所以在网上找了一个做了一些简单的修改...

 

  <form name="myform" method="post" action="">请选择图片:
<div id="imgBox"><!--这里是图片下拉选择器的位置--></div>
<input name="myhead" type="text" id="myface" size="10" value="">
</form>
<script language="javascript">
<!--
var imgWidth=64; //列表框中图片的宽度;
var imgHeight=62; //列表框中图片的高度;
var imgSrc="head/数字序号.gif"; //供选图片的路径。
//"数字序号"四字将在程序中替换为0,1,2...,不要手工更改为数字 ;
var selectedNo=7; //默认选定的图片序号;
var selecteSize=3; //下拉列表框中显示的图片数;

/* 以下把图片和层输出在"imgBox"的位置:
我们用变量"isin"记录鼠标是否在该控件上;用CSS定义下拉列表框的滚动条,
"overflow-x:hidden;overflow-y:scroll;"指水平方向不滚动,
竖直方面滚动;
用for()循环依次把图片输出到下拉列表框。
*/
var myHTML="<SPAN onmouseover=\"isin=true\" onmouseout=\"isin=false\">";  
myHTML+="<table width=\"1\" onclick=\"showlist(this)\" title=\"选择提示框\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td><img name=\"imgselected\" border=1 src=\""+imgSrc.replace("数字序号",selectedNo)+"\" WIDTH="+(imgWidth)+" HEIGHT="+imgHeight+"></td><td valign=top><img src=\"menu.gif\"></td></tr></table>";  
myHTML+="<DIV id=\"imgBox\" ";  
myHTML+="style=\"position:absolute;left=-800;top=0;background-color:#FFFFFF;border: 1px solid #000000;overflow-x:hidden;overflow-y:scroll; width:"+(imgWidth+20)+"px; height: "+imgHeight*selecteSize+"px\">";  
for(i=0;i<10;i++){  
myHTML+="<img listID="+i+" src='"+imgSrc.replace("数字序号",i)+"' alt='"+imgSrc.replace("数字序号",i)+"' width="+imgWidth+" height="+imgHeight+" onclick='selectme(this)' onload='if(init)init()'><BR>";  
}  
myHTML+= "</DIV></SPAN>"; 
imgBox.outerHTML=myHTML;

/* 以下控制下拉列表框的出现或隐藏 */ 
function showlist(obj){//这个函数将在选择提示框点击时激活  
//如果列表框已经出现,这次点击则隐藏:  
if(imgBox.style.pixelLeft!=-800){imgBox.style.pixelLeft=-800; return;}  
//读取选择提示框在窗体中的绝对位置:  
//在父容器中的相对位置:  
var mytop=obj.offsetTop;   
var myleft=obj.offsetLeft;  
//依次读取父容器在更高一级父容器中的相对位置:   
while(obj=obj.offsetParent){  
myleft+=obj.offsetLeft;   
mytop+=obj.offsetTop;   
}  
//现在已经得到选择提示框的绝对位置myleft和mytop。  
//下拉列表拉就出现在这个绝对位置的正下方:  
imgBox.style.left=myleft;  
imgBox.style.top=mytop+imgHeight+2;  
 
}  

var isin=false;  
function selectme(obj){ //这个函数将在窗体点击或选定图片时激活,窗体点击中传递的参数是null。  
if(!isin||obj){imgBox.style.pixelLeft=-800;} //隐藏列表框  
if(obj){  
//改变选择提示框中的图片和"myhead"输入框中的值:  
//listID是对象的自定义属性,即在对象的标签中定义了这个属性值,现在就可以读取或改变。  
myform.myhead.value=imgSrc.replace("数字序号",obj.listID);  
document.images["imgselected"].src=imgSrc.replace("数字序号",obj.listID);  
}  

function init(){ //本函数在每个列表框中的图片加载时激活
imgBox.scrollTop=selectedNo*imgHeight;
myform.myhead.value=imgSrc.replace("数字序号",selectedNo);
}
/* 以下使窗体点击时selectme(obj)函数被激活: */
myActivation="selectme(null)";
if(document.body.onclick)
{
eval(document.body.onclick.toString().replace
('anonymous()','bodyclick()'));
document.body.onclick=new Function("bodyclick();"+myActivation);
}
else document.body.onclick=new Function(myActivation);
-->

</script>

分享到:
评论
2 楼 yi_17328214 2009-12-21  
 :idea:
1 楼 yi_17328214 2009-12-21  
<form name="myform" method="post" action="">请选择图片:
<div id="imgBox"><!--这里是图片下拉选择器的位置--></div>
<input name="myhead" type="text" id="myface" size="10" value="">
</form>
<script language="javascript">
<!--
var imgWidth=64; //列表框中图片的宽度;
var imgHeight=62; //列表框中图片的高度;
var imgSrc="head/数字序号.gif"; //供选图片的路径。
//"数字序号"四字将在程序中替换为0,1,2...,不要手工更改为数字 ;
var selectedNo=7; //默认选定的图片序号;
var selecteSize=3; //下拉列表框中显示的图片数;
/* 以下把图片和层输出在"imgBox"的位置:
我们用变量"isin"记录鼠标是否在该控件上;用CSS定义下拉列表框的滚动条,
"overflow-x:hidden;overflow-y:scroll;"指水平方向不滚动,
竖直方面滚动;
用for()循环依次把图片输出到下拉列表框。
*/
var myHTML="<SPAN onmouseover=\"isin=true\" onmouseout=\"isin=false\">";  
myHTML+="<table width=\"1\" onclick=\"showlist(this)\" title=\"选择提示框\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td><img name=\"imgselected\" border=1 src=\""+imgSrc.replace("数字序号",selectedNo)+"\" WIDTH="+(imgWidth)+" HEIGHT="+imgHeight+"></td><td valign=top><img src=\"menu.gif\"></td></tr></table>";  
myHTML+="<DIV id=\"imgBox\" ";  
myHTML+="style=\"position:absolute;left=-800;top=0;background-color:#FFFFFF;border: 1px solid #000000;overflow-x:hidden;overflow-y:scroll; width:"+(imgWidth+20)+"px; height: "+imgHeight*selecteSize+"px\">";  
for(i=0;i<10;i++){  
myHTML+="<img listID="+i+" src='"+imgSrc.replace("数字序号",i)+"' alt='"+imgSrc.replace("数字序号",i)+"' width="+imgWidth+" height="+imgHeight+" onclick='selectme(this)' onload='if(init)init()'><BR>";  
}  
myHTML+= "</DIV></SPAN>"; 
imgBox.outerHTML=myHTML;
/* 以下控制下拉列表框的出现或隐藏 */ 
function showlist(obj){//这个函数将在选择提示框点击时激活  
//如果列表框已经出现,这次点击则隐藏:  
if(imgBox.style.pixelLeft!=-800){imgBox.style.pixelLeft=-800; return;}  
//读取选择提示框在窗体中的绝对位置:  
//在父容器中的相对位置:  
var mytop=obj.offsetTop;   
var myleft=obj.offsetLeft;  
//依次读取父容器在更高一级父容器中的相对位置:   
while(obj=obj.offsetParent){  
myleft+=obj.offsetLeft;   
mytop+=obj.offsetTop;   
}  
//现在已经得到选择提示框的绝对位置myleft和mytop。  
//下拉列表拉就出现在这个绝对位置的正下方:  
imgBox.style.left=myleft;  
imgBox.style.top=mytop+imgHeight+2;  
 
}  
var isin=false;  
function selectme(obj){ //这个函数将在窗体点击或选定图片时激活,窗体点击中传递的参数是null。  
if(!isin||obj){imgBox.style.pixelLeft=-800;} //隐藏列表框  
if(obj){  
//改变选择提示框中的图片和"myhead"输入框中的值:  
//listID是对象的自定义属性,即在对象的标签中定义了这个属性值,现在就可以读取或改变。  
myform.myhead.value=imgSrc.replace("数字序号",obj.listID);  
document.images["imgselected"].src=imgSrc.replace("数字序号",obj.listID);  
}  

function init(){ //本函数在每个列表框中的图片加载时激活
imgBox.scrollTop=selectedNo*imgHeight;
myform.myhead.value=imgSrc.replace("数字序号",selectedNo);
}
/* 以下使窗体点击时selectme(obj)函数被激活: */
myActivation="selectme(null)";
if(document.body.onclick)
{
eval(document.body.onclick.toString().replace
('anonymous()','bodyclick()'));
document.body.onclick=new Function("bodyclick();"+myActivation);
}
else document.body.onclick=new Function(myActivation);
-->
</script>

相关推荐

    js实现下拉框选择要显示图片的方法

    主要介绍了js实现下拉框选择要显示图片的方法,涉及针对js操作select的技巧,非常具有实用价值,需要的朋友可以参考下

    javascript实现瀑布流加载图片原理

    下拉滚动条到一定位置预加载图片,滚动条拉到最底下的时候渲染html; 鼠标移到菜单,切换各个图片列表; 鼠标移到图片列表上,显示详细信息;  技术实现方案:  先梳理一下从加载到显示的流程:  1. 加载...

    jQuery实现下拉框选择图片功能实例

    主要介绍了jQuery实现下拉框选择图片功能,可实现带图片的下拉列表功能,涉及jquery插件imageselect.js的使用,需要的朋友可以参考下

    适合移动网页客户端城市下拉选择列表

    用纯js实现的一款网页顶部下拉输入框,当然,可以输入好多内容 示例为城市名称下拉样式 使用方法: 1、将head中的样式引入到网页中 2、将body中的代码部分拷贝过去即可 (注意保持图片路径正确)

    JavaScript网页特效范例宝典源码

    实例043 应用JavaScript实现指定尺寸无边框无滚动条窗口 67 1.8 水平导航条应用 69 实例044 图片按钮导航条 69 实例045 导航条的动画效果 71 实例046 不用图片实现质感导航条 72 1.9 下拉菜单式导航条 73 实例047 二...

    程序天下:JavaScript实例自学手册

    6.5 从一个下拉列表往另一个下拉列表添加内容 6.6 改变列表项的上下顺序 6.7 给下拉框数据分组 6.8 获取列表框的选择 6.9 类IE下拉框 6.10 下拉框式邮件发送 6.11 获取多选框的选择项 6.12 手动调整的列表框 6.13 ...

    JavaScript完全自学宝典 源代码

    6.6.html 多级下拉列表联动。 6.7.html 各种使用JavaScript获取复选框值的方法。 6.8.html JavaScript控制复选框。 6.9.html 复选框的JavaScript特效。 6.10.html JavaScript取单选框的值。 ...

    网页广告 代码全集 js 广告代码 大全 1-61 (A)

    109:四屏切换JS广告代码下载 110:JavaScript图片切换效果 下载 111:在线客服代码 下载 112:单独关闭的两边悬挂代码下载 113:全屏可伸缩可关闭广告代码下载 114:四屏JS带缩略图的焦点图 下载 115:书角带阴影的...

    《程序天下:JavaScript实例自学手册》光盘源码

    6.5 从一个下拉列表往另一个下拉列表添加内容 6.6 改变列表项的上下顺序 6.7 给下拉框数据分组 6.8 获取列表框的选择 6.9 类IE下拉框 6.10 下拉框式邮件发送 6.11 获取多选框的选择项 6.12 手动调整的列表框 6.13 ...

    GenJS v2.0 很棒的Div弹出窗口JS类.rar

    其中最强大的应该算Div弹出窗口、Div下拉列表了,扩展性相当的好。可以自己写扩展,实现自己的弹出窗口、下拉菜单。  主要包括三个大的文件PopStyle.css、Gen.js(包括所有类基本操作语句,您可以根据需要进行删减...

    javascript网页特效实例大全(13-19)

    实例374 无刷新的级联下拉列表 614 实例375 使用XML实现不刷新页面查询数据 616 16.3 调用与控制 619 实例376 将查询结果导出到Word 619 实例377 调用Excel 621 实例378 调用PowerPoint 622 16.4 其他...

    s2招聘特效制作项目

    javascript 常用的特效: 1。DIV套表格布局页面 2、网页左侧实现带关闭按钮、随...4、职位按地区搜索,实现级联的二级下拉列表框 10、左侧的功能菜单下的超链接,实现对应网页右侧相对层的显示、隐藏效果 。。。。。。

    JaveScript源代码大放送

    13用JavaScript实现页面百叶窗效果 14用JS的方法使用列表LI制作的隔行换色 15直接调用计算机中的程序 16网页的任意缩放 17页面窗口的由小变大 18说明框的各种用法 19导航菜单下拉展开的方法详解 20状态栏文字拉长的...

    轻轻松松学用javascript编程(PDF)

    4.2 字符类 4.3 正则表达式的应用例子 5 可参考学习的,精美的代码例子 5.1 预载入图片,实现导航按钮的动态效果 5.2 显示对象的提示信息 5.3 一个精美的日历 5.4 一个下拉菜单 5.5 类似...

    JQuery&CSS;&CSS;+DIV实例大全.rar

    一款美化表单下拉列表、复选框等的jquery combobox插件实例 30.站长必备jquery实现combox自动筛选,高亮显示功能 4)菜单 1.jquery+CSS超炫丽横向多级滑动导航菜单 2.jQuery+CSS漂亮蓝色三级菜单下载 3....

    小程序 使用view实现下拉刷新,上拉加载数据//加载三点实现

    如图,微信小程序实现上拉加载,下拉刷新。代码如下 js文件代码 // pages/loading/loading.js  var p = 1  var url = "http://192.168.30.4:8080/gtxcx/carrier/getCarrier.action";  var GetList = function ...

    网页广告 代码全集 js 广告代码 62-120 大全 (B)

    109:四屏切换JS广告代码下载 110:JavaScript图片切换效果 下载 111:在线客服代码 下载 112:单独关闭的两边悬挂代码下载 113:全屏可伸缩可关闭广告代码下载 114:四屏JS带缩略图的焦点图 下载 115:书角带阴影的...

    ReportX报表控件2.3.1.0

    支持各种行列操作,支持文本、下拉列表、按钮、复选、单选、日期、时间、链接、图表、图片类型单元格及各种单元格操作,支持公式(包括各种统计函数),支持VBScript、JavaScript脚本。 本组件除脚本功能需要微软Ms...

Global site tag (gtag.js) - Google Analytics