jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现


Posted in Javascript onApril 18, 2010

关键字“拖曳搜索”之“拖曳”功能需要 jQuery UI 之 droppable 库 效果如下:

jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现

搜索包含相关关键字时,把拖曳左边关键字到右边框里面 也可以在输入框里输入自定义关键字到下面框 即可搜索

如果去掉不需要的关键词 搜索时 把不需要的关键词从右边框拖曳回到左边 即可

jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现

 

无论原来还是自定义加入的关键词 如果已存在 她会提示...

jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现
实现:

<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="js/jquery-ui-1.8.custom.min.js"></script>

左边框 右边框
<div id="KeywordContent" class="keyword_content_BackGround ui-droppable"> 
<a href="#c" value="温馨" style="cursor:pointer"> 温馨 </a> 
<a href="#c" value="春天" style="cursor:pointer"> 春天 </a> 
<a href="#c" value="儿童" style="cursor:pointer">儿童 </a> 
<a href="#c" value="美女" style="cursor:pointer">美女</a> 
<a href="#c" value="爱情" style="cursor:pointer">爱情</a> 
.... 
</div> 
<div id="keywordIncluding" class="keyword_including"> 
</div>

拖曳关键代码:
拖曳关键词
$('#keywordIncluding a, #KeywordContent a').draggable({ 
helper: 'clone' 
}); 
// 左边 keyword_content 拖曳到 右边keyword_including 
$('#KeywordContent').droppable({ 
accept: '#keywordIncluding a', 
activeClass: 'keyword_content_active', 
opacity: '0.5', 
drop: function(ev, ui) { 
$(this).addClass('dropped'); 
ui.draggable.fadeOut('fast', function() { 
$(this).fadeIn('fast'); 
}).appendTo($(this)); 
} 
}); 
// 右边 keyword_including 拖曳到 左边keyword_content 
$('#keywordIncluding').droppable({ 
accept: '#KeywordContent a', 
activeClass: 'including_active', 
opacity: '0.5', 
drop: function(ev, ui) { 
$(this).addClass('dropped'); 
ui.draggable.fadeOut('normal', function() { 
$(this).fadeIn('fast'); 
}).appendTo($(this)); 
} 
});

判断是否存在自定义的关键字,如果有就提示,没有的话就加入
//输入框点击 
$('#AddInput input[type="button"]').click( InputInclude); 
//输入框 回车 
function ownKeywordAddInput(evt) 
{ 
if(evt.keyCode==13) 
{ 
InputInclude(); 
} 
} 
//关键词是否存在 
function InputInclude(){ 
$('#keywordIncluding').addClass("dropped"); 
var own = $('.add_to_search #AddInput input').val(); 
own = jQuery.trim(own); 
if( own.length != 0) 
{ 
//在此处理"|"问题 
while(own.indexOf('|')>-1) 
{ 
own = own.replace(/\|/g,""); 
} 
while(own.indexOf(' ')>-1) 
{ 
own = own.replace(/ /g,""); 
} 
var ExistsKeywordArr = GetExistsKeywordArr(); 
for(var i=0;i<ExistsKeywordArr.length;i++) 
{ 
if(ExistsKeywordArr[i]==own) 
{ 
alert('此关键字已存在,请通过拖拽操作获取关键字来搜索图片'); 
return; 
} 
} 
$('#keywordIncluding').append("<a href='#c' value="+own+" style='cursor:pointer'>"+ own +"</a>"); 
$('.add_to_search #AddInput #baohan').val(''); 
} 
$('#keywordIncluding a').draggable({ 
helper: 'clone' 
}); 
}

关键字是否存在
function GetExistsKeywordArr() 
{ 
var keyArrResult=[]; 
$("#keywordIncluding a").each( 
function(i,v){ 
keyArrResult.push($(v).attr("value")); 
}); 
$("#KeywordContent a").each( 
function(i,v){ 
keyArrResult.push($(v).attr("value")); 
}); 
return keyArrResult; 
}

拖曳就这样实现了 如果要实现拖曳搜索功能的话 加入Ajax 就ok了!

下面说说 图片“提示自适应放大”效果

一张小的缩略图 当鼠标移过时 就会有放大的提示效果 :

jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现

缩略图如果在页面不同位置时 鼠标移过时 放大提示效果会自动感应

提示放大效果应该是在左边还是右边 或者上面或者下面 不会因浏览器而遮住 非常人性化

jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现

实现

<script type="text/javascript" src="js/jquery.tooltip.js"></script> 
<li> 
<span class="img"> 
<a href="#"> <img src="1h-3928.jpg" lowsrc="1h-39281.jpg" /> </a> 
</span> 
</li>

提示效果
<script type="text/javascript"> 
$(".img img").tooltip({ 
track: true, 
delay: 1000, 
showURL: false, 
bodyHandler: function() { 
return $("<img/>").attr("src", this.lowsrc); 
} 
}); 
</script>

完毕!演示效果:http://www.quanjing.com/FrameSet.aspx?SearchType=7&SearchTab=G2&CEFlag=1

作者:曾祥展
出处:http://zengxiangzhan.cnblogs.com/

Javascript 相关文章推荐
漂亮的jquery提示效果(仿腾讯弹出层)
Feb 05 Javascript
jquery入门必备的基本认识及实例(整理)
Jun 24 Javascript
Lab.js初次使用笔记
Feb 28 Javascript
基于jQuery日历插件制作日历
Mar 11 Javascript
JS 实现倒计时数字时钟效果【附实例代码】
Mar 30 Javascript
详谈JavaScript的闭包及应用
Jan 17 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
Feb 16 Javascript
JS 实现分页打印功能
May 16 Javascript
JS/jQuery实现简单的开关灯效果【案例】
Feb 19 jQuery
详解如何探测小程序返回到webview页面
May 14 Javascript
vue组件是如何解析及渲染的?
Jan 13 Vue.js
Vue仿Bibibili首页的问题
Jan 21 Vue.js
jquery 新手学习常见问题解决方法
Apr 18 #Javascript
javascript 设计模式之单体模式 面向对象学习基础
Apr 18 #Javascript
js 获取子节点函数 (兼容FF与IE)
Apr 18 #Javascript
几个比较实用的JavaScript 测试及效验工具
Apr 18 #Javascript
javascript JSON操作入门实例
Apr 16 #Javascript
javascript对象之内置对象Math使用方法
Apr 16 #Javascript
jQuery 类twitter的文本字数限制带提示效果插件
Apr 16 #Javascript
You might like
一个没有MYSQL数据库支持的简易留言本的编写
2006/10/09 PHP
用session做客户验证时的注意事项
2006/10/09 PHP
用PHP+MySQL搭建聊天室功能实例代码
2012/08/20 PHP
php实现mysql数据库操作类分享
2014/02/14 PHP
学习php设计模式 php实现享元模式(flyweight)
2015/12/07 PHP
示例详解Laravel的注册重构
2016/08/14 PHP
屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键 的javascript代码
2007/04/01 Javascript
JavaScript调用堆栈及setTimeout使用方法深入剖析
2013/02/16 Javascript
javascript实现在指定元素中垂直水平居中
2015/09/13 Javascript
JavaScript检查子字符串是否在字符串中的方法
2016/02/03 Javascript
AngularJS动态菜单操作指令
2017/04/25 Javascript
Vue.js实现分页查询功能
2020/11/15 Javascript
JS 自执行函数原理及用法
2019/08/05 Javascript
详解Vue的watch中的immediate与watch是什么意思
2019/12/30 Javascript
JavaScript实现拖动对话框效果的实现代码
2020/10/12 Javascript
js 执行上下文和作用域的相关总结
2021/02/08 Javascript
用Python编写脚本使IE实现代理上网的教程
2015/04/23 Python
Python2.x版本中maketrans()方法的使用介绍
2015/05/19 Python
Python黑魔法Descriptor描述符的实例解析
2016/06/02 Python
python将字典列表导出为Excel文件的方法
2019/09/02 Python
Python常用模块os.path之文件及路径操作方法
2019/12/03 Python
Python3实现发送邮件和发送短信验证码功能
2020/01/07 Python
基于python模拟TCP3次握手连接及发送数据
2020/11/06 Python
python接口自动化框架实战
2020/12/23 Python
pytorch 计算Parameter和FLOP的操作
2021/03/04 Python
HTML5 FormData 方法介绍以及实现文件上传示例
2017/09/12 HTML / CSS
芝加哥牛排公司:Chicago Steak Company
2018/10/31 全球购物
Bibloo匈牙利:女装、男装、童装及鞋子和配饰
2019/04/14 全球购物
成功的酒店创业计划书
2013/12/27 职场文书
小学生演讲稿
2014/01/12 职场文书
会计工作心得体会
2014/01/13 职场文书
《月光启蒙》教学反思
2014/03/01 职场文书
教师网络培训感言
2014/03/09 职场文书
公职人员索取回扣检举信
2014/04/04 职场文书
2014个人反腐倡廉思想汇报
2014/09/15 职场文书
工厂见习报告范文
2014/10/31 职场文书