国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

基于jquery的on和click的區別詳解

2019-11-19 14:31:23
字體:
來源:轉載
供稿:網友

使用jQuery寫js時,有些用on寫行為函數,有些用click,弄清二者區別很重要。

以下是用于測試二者區別的HTML代碼。

<!DOCTYPE html><%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> <html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body> <div>  <h1>展示jQuery中on()和click()的區別</h1> </div> <div>  <span>點擊生成新按鈕。NewOn生成的Delete按鈕行為用on()實現,NewClick生成的Delete按鈕行為用click()實現。</span> </div> <div class="test">  <button class="new" id="newon">NewOn</button>   <button class="new" id="newclick">NewClick</button>  <ul class="li">    <li>原先的HTML元素on<button class="deleteon">Delete</button></li>    <li>原先的HTML元素click<button class="deleteclick">Delete</button></li>   </ul>  </div></body><script src="/static/js/jquery-3.1.1.min.js"></script><script src="/static/js/test.js"></script></html>

js文件如下:

$("#newclick").click(function(){  $(".li").append('<li>動態添加的HTML元素click<button class="deleteclick">Delete</button></li>'); });$("#newon").click(function(){  $(".li").append('<li>動態添加的HTML元素on<button class="deleteon">Delete</button></li>'); });$(".delete").click(function(){  $(this).parent().remove(); }); $(".li").on('click', ".deleteon", function(){ $(this).parent().remove(); })$(".deleteclick").click(function(){  $(this).parent().remove(); });

頁面加載后,點擊NewOn和NewClick按鈕,頁面如下圖所示。

現象:

原先的HTML元素點擊其身后的Delete按鈕就會被刪除。而動態添加的HTML元素,使用click()這種寫法,點擊Delete按鈕無法刪除;使用On()方式可以。

原因:

element.click()這種寫法不支持給動態元素或樣式綁定事件。支持給動態元素綁定事件的是.live()和.on()。live在jQquery1.7后就不推薦使用了。使用.on()時注意,on前面的元素必須在頁面加載的時候就存在DOM里面。

以上這篇基于jquery的on和click的區別詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 织金县| 资溪县| 包头市| 桃园县| 阿拉善左旗| 通榆县| 晴隆县| 重庆市| 镇赉县| 旺苍县| 新疆| 甘孜| 留坝县| 兴国县| 庄浪县| 徐汇区| 高邮市| 临猗县| 伊吾县| 海南省| 会东县| 永春县| 开化县| 丰都县| 霍林郭勒市| 内黄县| 高阳县| 烟台市| 博兴县| 靖边县| 黄大仙区| 鞍山市| 星子县| 成武县| 丽水市| 新平| 岳阳市| 丹巴县| 庆安县| 广汉市| 江源县|