day72 jq学习

  一.jq文档结构

  

var $sup = $('.sup');
console.log($sup.children());  // 子们
console.log($sup.parent()); // 父
console.log($sup.prev());  //上兄弟
console.log($sup.next()); // 下兄弟
console.log($sup.siblings()); // 兄弟们

  二.文档操作

  操作步骤

  

// 1.创建页面元素
var $box = $('<div class = "box"></div>')
// 2.设置页面元素
$box.text('文本');
$box.click(fn);
// 3.添加到指定位置
$box.appendTo($('body'));

  内部操作

  

// append(); 父加子到最后
// prepend(); 父加子到最前
// appendTo(); 子加到父到最后
// prependTo(); 子加到父到最前

  兄弟

$('.box').after('<b></b>'); // 在box后添加一个b标签
$('.box').before('<b></b>'); // 在box前添加一个b标签

  包裹(添加父级)

$('.box').wrap('<div></div>');  // 为box添加一个div父级

  替换

$('.box').replaceWith($('.ele')); // 把box替换为ele
$('p').replaceAll($('b'));  //用p替换所有的b

  删除

// 1.清空所有自己
$('.box').empty();  // 将box的子级全部删除,操作的返回值为自身 
// 2.不保留事件的删除
// remove()操作的返回值为 自身
$('.box').remove().appendTo($('body')); // 删除自身再添加到body,原来box已有的事件不再拥有
// 3.保留事件的删除
// detach()操作的返回值为 自身
$('.box').detach().appendTo($('body')); // 删除自身再添加到body,原来box已有的事件依然拥有

  三.表单

// form
// 属性
// action: 请求的后台接口
// method: get|post请求方式,get拼接接口方式传输数据(不安全),post携带数据包传输数据(安全)

  表单元素类型

  

<div class = "row">
    <! --普通输入框-->
    <label>用户名:</label>
    <input type = "text" id = "usr" name = "usr">
</div>
<div class = "row">
    <! --密文输入框-->
    <label>密码:</label>
    <input type = "password" id = "pwd" name = "pwd">
</div>
<div class = "row">
    <! --按钮-->
    <input type = "button" value = "普通按钮">
    <button class = "btn1">btn按钮</button>
</div>
<div class = "row">
    <! --单选框-->
    <! --注: 通过唯一标识name进行关联, checked布尔类型属性来默认选中><input type = "radio" name = "sex" value = "male"><input type = "radio" name = "sex" value = "female">
    哇塞<input type = "radio" name = "sex" value = "wasai" checked>
</div>
<div class = "row">
    <! --复选框-->
    <! -- 注:用户不能输入内容,但是能标识选择的表单元素需要明确value值-->
    篮球<input type = "checkbox" name = "hobby" value = "lq">
    足球<input type = "checkbox" name = "hobby" value = "zq">
    乒乓球<input type = "checkbox" name = "hobby" value = "ppq">
    其他<input type = "checkbox" name = "hobby" value = "other">
</div>
<div class = "row">
    <! --文本域-->
    <textarea></textarea>
</div>
<div class = "row">
    <! --下拉框-->
    <select name="place">
        <option value="sh">上海</option>
        <option value="bj">北京</option>
        <option value="sz">深圳</option>
    </select>
</div>
<div class="row">
    <!--布尔类型属性-->
    <!--autofocus: 自动获取焦点-->
    <!--required: 必填项-->
    <!--multiple: 允许多项-->
    <input type="text" autofocus required>
    <input type="file" multiple>
    <input type="range">
    <input type="color">
</div>
<div class="row">
    <!--重置-->
    <input type="reset" value="重置">
</div>
    

  四.正则

// 定义
var re = /\d{11}/ig
// 1.正则的语法书写在//之间
// 2.i代表不区分大小写
// 3.g代表全文匹配

// 匹配案例
"abcABCabc".search(/[abc]/); // 在字符串abcABCabc匹配单个字符a或b或c,返回匹配到的第一次结果的索引, 没有匹配到返回-1
"abcABCabc".match(/\w/); // 进行无分组一次性匹配, 得到得到结果构建的数组类型[a, index:0, input:"abcABCabc"], 没有匹配到返回null
"abcABC".match(/\w/g); // 进行全文分组匹配, 得到结果为结果组成的数组[a, b, c, A, B, C]
"abcABC".match(/(abc)(ABC)/);
// RegExp.$1取第一个分组
// RegExp.$2取第二个分组

猜你喜欢

转载自www.cnblogs.com/xiaocaiyang/p/10216144.html