Change如何用原生js去触发该事件

JavaScript09

Change如何用原生js去触发该事件,第1张

原生JS的onchang是在input值变化并失去焦点的时候才会触发,参考一下:

<input type="text" id="mytext" value="" />

<script type="text/javascript">

   var input = document.getElementById('mytext')

    if (input.addEventListener) {

        input.addEventListener('change', function () {

            console.log('aaaaaa')

        })

    }

    else {

        input.attachEvent('onchange', function () {

            console.log('aaaaaa')

        })

    }

</script>

原生键盘监听事件:按下一次按键,分为三个过程,按下—按住—松开

onkeydown:某个键被按下

onkeypress:某个键盘的键被按下或按住

onkeyup:某个键盘的键被松开

使用方法,一般来说,键盘监听是直接在整个页面文档上进行监听的,也就是document上

以下是原生的使用案例

//实际使用

document.onkeydown=function(e){ //对整个页面文档监听

var keyNum=window.event ? e.keyCode :e.which //获取被按下的键值

//判断如果用户按下了回车键(keycody=13)

if(keyNum==13){

alert('您按下了回车')

}

//判断如果用户按下了空格键(keycode=32),

if(keyNum==32){

alert('您按下了空格')

}

}

剩下另外两个按键方法同理

jquery的方式监听键盘事件

jquery的也分为三个过程,但是在事件名称上有所不同

keyup:某个键盘的键被松开

keydown:某个键被按下

keypress:某个键盘的键被按下或按住

可以用js的事件委托啊。

比如你的分页生成的代码会插入到一个<div id="pager"></div>里,在生成html片段时为a设置一个属性用来表示页数,如:<a href="#" data-page="1">第1页</a>

事件委托的js代码如下:

$('#pager').delegate('a', 'click', function(e){

e.preventDefault() //阻止a的默认事件

var page = $(this).data('page') //从当前a标签属性中取出页码

//处理分页,如果是跳转:

location.href = "/pagename.php?page=" + page

//如果是异步取分页数据:

var page_api = '/pagedata.php?page=' + page

$.get(page_api, function(data, textStatus, jqXHR){

//使用ajax获取数据

//拼装数据并填充到数据显示区:

$('#list-container').append( createHTML(data) )

//重新生成分页区

createPager( page )

})

})

function createHTML(data){

//拼装数据的函数

}

function createPager(curPage){

//生成分页的函数

var tpl = '<a href="#" data-page="{#index}">第{#index}页</a>'

//...

}