沐鸣网页登录_用事件绑定做新闻点击
- 编辑:主管 -沐鸣网页登录_用事件绑定做新闻点击
1、事件监听和事件绑定是一个意思吗? 什么时候该用?
一个意思。例如点击一个按钮,接着要做的事情就是一个事件了
2、html中绑定点击事件的几种方法介绍
documentgetElementById()
documentgetElementBytagename()
3、jquery绑定点击事件的方法
jQuery绑定点击事件可以使用其绑定事件函数
jquery中四个事件绑定方式(bind,live,delegate,on)
1、bind()
简要描述
bind()向匹配元素添加一个或多个事件处理器。
使用方式
$(selector).bind(event,data,function)
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;
单事件处理:例如 $(selector).bind("click",data,function);
多事件处理:
1.利用空格分隔多事件,例如 $(selector).bind("click dbclick mouseout",data,function);
2.利用大括号灵活定义多事件,例如 $(selector).bind({event1:function, event2:function, ...})
3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;
大括号替代方式:绑定较为灵活,可以给事件单独
绑定函数;
data:可选;需要传递的参数;
function:必需;当绑定事件发生时,需要执行的函数;
适用Jquery版本
适用所有版本,但是根据官网解释,自从jquery1.7版本以后bind()函数推荐用on()来代替。
2、live()
简要描述
live() 向当前或未来的匹配元素添加一个或多个事件处理器;
使用方式
$(selector).live(event,data,function)
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;
单事件处理:例如 $(selector).live("click",data,function);
多事件处理:1.利用空格分隔多事件,例如 $(selector).live("click dbclick mouseout",data,function);
2.利用大括号灵活定义多事件,例如 $(selector).live({event1:function, event2:function, ...})
3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;
大括号替代方式:绑定较为灵活,可以给事件单独绑定函数;
data:可选;需要传递的参数;
function:必需;当绑定事件发生时,需要执行的函数;
适用Jquery版本
jquery1.9版本以下支持,jquery1.9及其以上版本删除了此方法,jquery1.9以上版本用on()方法来代替。
3、delegate()
简要描述
delegate() 为指定的元素(被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。使用 delegate() 方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。
使用方式
$(selector).delegate(childSelector,event,data,function)
childSelector: 必需项;需要添加事件处理程序的元素,一般为selector的子元素;
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;
单事件处理:例如 $(selector).delegate(childselector,"click",data,function);
多事件处理:1.利用空格分隔多事件,例如 $(selector).delegate(childselector,"click dbclick mouseout",data,function);
2.利用大括号灵活定义多事件,例如 $(selector).delegate(childselector,{event1:function, event2:function, ...})
3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;
大括号替代方式:绑定较为灵活,可以给事件单独绑定函数;
data:可选;需要传递的参数;
function:必需;当绑定事件发生时,需要执行的函数;
适用Jquery版本
jquery1.4.2及其以上版本;
4、on()
简要描述
on() 为指定的元素,添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。使用 on() 方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。
使用方式
$(selector).on(event,childselector,data,function)
event:必需项;添加到元素的一个或多个事件,例如 click,dblclick等;
单事件处理:例如 $(selector).on("click",childselector,data,function);
多事件处理:1.利用空格分隔多事件,例如 $(selector).on("click dbclick mouseout",childseletor,data,function);
2.利用大括号灵活定义多事件,例如 $(selector).on({event1:function, event2:function, ...},childselector);
3.空格相隔方式:绑定较为死板,不能给事件单独绑定函数,适合处理多个事件调用同一函数情况;
大括号替代方式:绑定较为灵活,可以给事件单独绑定函数;
childSelector: 可选;需要添加事件处理程序的元素,一般为selector的子元素;
data:可选;需要传递的参数;
function:必需;当绑定事件发生时,需要执行的函数;
适用Jquery版本
jquery1.7及其以上版本;jquery1.7版本出现之后用于替代bind(),live()绑定事件方式;
四种方式的异同和优缺点
相同点:
1.都支持单元素多事件的绑定;空格相隔方式或者大括号替代方式;
2.均是通过事件冒泡方式,将事件传递到document进行事件的响应;
比较和联系:
1.bind()函数只能针对已经存在的元素进行事件的设置;但是live(),on(),delegate()均支持未来新添加元素的事件设置;
2.bind()函数在jquery1.7版本以前比较受推崇,1.7版本出来之后,官方已经不推荐用bind(),替代函数为on(),这也是1.7版本新添加的函数,同样,可以
用来代替live()函数,live()函数在1.9版本已经删除;
3.live()函数和delegate()函数两者类似,但是live()函数在执行速度,灵活性和CSS选择器支持方面较delegate()差些
4.bind()支持Jquery所有版本;live()支持jquery1.8-;delegate()支持jquery1.4.2 ;on()支持jquery1.7 ;
总结
如果项目中引用jquery版本为低版本,推荐用delegate(),高版本jquery可以使用on()来代替,以上仅为个人看法
4、微信小程序怎么让数据动态显示?或者绑定点击事件?
创建一个按钮,点击这个按钮,改变视图层上面的数据
示例:
新建一个微信小程序的Hello World项目,找到index.wxml文件
index.wxml:
使用一个<button>元素,使用bindtap事件作为点击事件
index.js:
在Page({})内,定义一Page个函数changeMotto,函数内部中使用关键字this,this代表对象,
调用setData()函数,里面传入一个Object对象作为参数,把motto的这个字符串变量,重新赋值为“你好 世界”
5、jQuery事件绑定方法bind,live,delegate和on的区别
bind是用来绑定一个或多个事件的,live其实bind的一个加强版,用来绑定通过JavaScript或者jQuery添加的DOM元素事件,其语法结构是一样
123456$("p").bind("mouseenter mouseleave",function(){alert("ok");})$("p").live("mouseenter mouseleave",function(){alert("ok");})
delegate用于事件委托,也是绑定过JavaScript或者jQuery添加的DOM元素事件。
123$("div").delegate("p","click",function(){alert("p");})
点击div下面的P执行alert;
而on是在1.7之后新增的,是把bind,live,delegate全部合并在一起了,
123$("div").on("click","p",function(){ alert(1); })
不需要事件委托的时候把P去掉就会变成点击div触发了。
个人建议根据版本来使用,语法其实都差不多,如果你是用1.7版本以上就建议用on,毕竟bind,live,delegate这些将来都会遗弃了,如有错误,请指出。顺便吐槽一下楼上的回答,不走心啊
6、如何利用Vue.js库中的v-on指令绑定按钮点击事件
第一步,创建静态页面von.html,并引入vue.js关键的核心js文件,如下图所示:
第二步,在主题元素下插入div标签元素,并在其中插入一个input输入框和一个按钮,利用v-on指令绑定点击事件queryDate,如下图所示:
第三步,在div标签下方编写vue.js点击事件,事件是获取当前日期,如下图所示:
第四步,为了让输入框和按钮有间距,这里设置body元素样式,如下图所示:
第五步,预览该静态页面,然后点击按钮,发现输入框没有值,调试下发现错误,缺少jquery核心js文件,如下图所示:
第六步,引入jquery核心js文件后再次预览页面,并单击按钮,这时日期就显示在输入框内,如下图所示:
7、html 如何用原生js绑定一个点击事件,点击页面任何一处都产生效果
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body onclick="doClose();">
<input type="text" name="txtA" value="click" onclick="show(event);">
<div id="pad">你好</div>
</body>
<script>
document.onclick=function(){
var pad=document.getElementById("pad").style.color = "red";
}
</script>
</html>
8、jquery用on绑定事件
$(function(){$('.btn').click(function(){
$('body').append('<button class-"btn"></button>');
//注意上句错误。append的字符串中应该是<button class="btn"></button>
});
$('.btn').on('click',function(){
console.log('haha');
});
//上面绑定的方式也不对。因为页面刚加载时$('.btn')并不包括后来生成的button。
//而且你第一个button,和之后生成的button。都是class="btn"这样就没法区别了。
//所以最好的方式是,页面本身存在的button和之后生成的button,不要叫一个名字。
//比如第一个button的class叫做btn-default,之后生成的button的class叫做btn-append
});
重新给你写一个例子。看下面:
HTML文件
<html><head>
<script src="jquery.js"></script>
<title>演示</title>
</head>
<body>
<button id="btn-default">默认按钮</button>
</body>
</html>
javascript文件
$('body').append('<button class="btn-append">生成的按钮</button>');
});
$(document).on('click', '.btn-append', function(){
console.log('你刚才点击了动态添加的按钮');
});
动态添加的按钮因为是后来才有的,所以必须采用上述时间代理的方式,来监听事件。
9、网页制作中,怎么实现点击新闻标题,在下方出现详细信息,不用url跳转
用JavaScript代码可以实现
首先用HTML css写好文章内容,然后把文章的内容隐藏,添加一个点击显示的事件,
点击哪一个显示哪个,以此类推,就可以实现点击哪一个文章的标题,就可以显示哪一个文章,其他文章都隐藏。
你只需要记住,只要是不跳转就显示的元素,一定是属于这个网页的元素,事先就已经写好了的,只是被隐藏了而已。
10、jQuery on()方法绑定动态元素的点击事件实例代码浅析
之前就一直受这个问题的困扰,在jQuery1.7版本之后添加了on方法,之前就了解过,其优越性高于live(),bind(),delegate()等方法,在此之前项目中想用这个来测试结果发现,居然动态生成的标签点击了没反应,而live方法却能够支持,于是乎到处查资料,问网友,结果找了好久在一篇文章中终于找到了答案。。。
jQuery
使用on绑定动态生成的元素时,不能直接用该对象操作,而是选择其非动态生成的父节点然后再找到本身才能达到效果。大家看看源码就知道了。生成的按钮基数项on方法点击无效live方法有效。
比如页面上有下边两个元素:
<input
type="button"
name="addbtn"
value="按钮添加"
/>
<div
id="test">
</div>
使用下边的jQuery代码大家可以对比看看区别:
$(function
()
{
var
a
=
1,
$_div
=
$('#test');
$('input[name=addbtn]').on('click',
function
()
{
$_div.append('<input
type="button"
name="test'
a
'"
value="按钮'
a
'"/>');
a ;
});
//偶数项点击事件
$_div.on('click',
'input[name^=test]:even',
function
()
{
alert('我是有效的on方法,你能看见我吗:'
this.value);
});
//奇数项绑定的点击事件
发现点击无效,而是用live方法却能够支持
$('input[name^=test]:odd').on('click',
function
()
{
alert('我是无效的on方法,你不能看见我');
});
//奇数项绑定的点击事件
发现点击无效,而是用live方法却能够支持
$('input[name^=test]:odd').live('click',
function
()
{
alert('我是live方法,你能看见我吗:'
this.value);
});
});
以上所述是小编给大家介绍的jQuery
on()方法绑定动态元素的点击事件的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!