事件模拟trigger

在操作DOM元素中,大多数事件都是用户必须操作才会触发事件,但有时候,需要模拟用户的操作,来实现一些需求.

需求:页面初始化时触发搜索事件并获取input控件值,并打印输出(效果图如下)

<注:class、id按规则,绑定事件DOM元素均以"T-*"开头>

 <!DOCTYPE html>
<html>
<head>
<title>simulate-trigger</title>
<script src="../../scripts/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
var $container=$('#T-container');
$container.find('.T-search').on('click',function(){
function getVal($tab,name){//获取控件值,$tab对象,name控件名称
return $tab.find("[name="+name+"]").val();
}
var $that=$(this),
$searchArea=$that.closest('.T-search-area'),
name = getVal($searchArea,"name"),
touristName = getVal($searchArea,"touristName");
$searchArea.append("<p>"+ name +"-"+ touristName +"</p>");
});
//模拟click事件
$container.find('.T-search').trigger('click');
})
</script>
</head>
<body>
<div id="T-container">
<div class="T-search-area">
<label>线路产品</label>
<input type="text" name="name" value="九寨沟黄龙溪三日游"/>
<label>游客</label>
<input type="text" name="touristName" value="HelloKitty"/>
<input type="button" value="搜索" class="T-search" />
</div>
</div>
</body>
</html>

新添加于 2017-05-21 14:05:32  trigger虽模拟用户行为,但当被操作的元素是超链接标签a时;不会触发href页面跳转行为;

解决方法是超链接标签a添加子级标签;为子级标签绑定trigger事件;就可以触发a标签href行为了

 <a href="http://www.cnblogs.com/zjf-1992/" id="myBlog">My Blog</a>
<script type="text/javascript">
$(function(){
var $myBlog = $("#myBlog"),
text = $myBlog.text();
$myBlog.html('<span class="myBlogChild">'+ text +'</span>');
$myBlog.on("click", '.myBlogChild', function(event){
console.log("init.....");
})
//trigger
$myBlog.find(".myBlogChild").trigger("click");
});
</script>

最新文章

  1. XMLHTTPRequest对象的创建与浏览器的兼容问题
  2. php常用加密算法
  3. codeforces 161D Distance in Tree 树形dp
  4. white-space 属性设置如何处理元素内的空白
  5. Lucas定理及其应用
  6. 如何使用 Cloud Insight SDK 实现 Druid 监控?
  7. Android手势解锁, 九宫格解锁
  8. Android SDCard Mount 流程分析
  9. Scala入门 【1】
  10. Meta http-equiv属性详解
  11. 【化繁为简】非前端开发者的福音---CSS的预处理语言 Less&amp;Sass
  12. SpringCloud笔记四:Ribbon
  13. 安卓入门——————简单记账本的开发(二)-点击listview跳转并实现数据的更新
  14. Jmeter之集合点(Synchronizing timer 同步定时器)
  15. Linux Cluster
  16. 洛谷 P1452 Beauty Contest 解题报告
  17. SpringMVC 请求响应流程
  18. Redis学习之路(四)之Redis集群
  19. The future of scripting in Unity
  20. 【C#】使用DWM实现无边框窗体阴影或全透窗体

热门文章

  1. 写出易调试的SQL(修订版)
  2. SuperMap iClient for JavaScript 新手入门
  3. spring boot 部署为jar
  4. BPM与 SAP &amp; Oracle EBS集成解决方案分享
  5. OpenDigg前端开源项目周报1219
  6. mac好用的markdown编辑器
  7. firebug不能加载JS文件 ,无法进行JS脚本调试
  8. Yeoman 学习笔记
  9. 我的MYSQL学习心得(十五) 日志
  10. .NET Core性能测试组件BenchmarkDotNet 支持.NET Framework Mono