发表于: 2017-04-09 23:40:47

1 1191


今天完成的事:

总结JQ的基础知识:

在jQuery中,我们一般通过一个字符串来标识匹配的元素,例如:

$("#uid"); // 选取id属性为"uid"的单个元素

$("p"); // 选取所有的p元素

$(".test"); // 选择所有带有CSS类名"test"的元素

$("[name=books]"); // 选择所有name属性为"books"的元素

在jQuery中,对DOM元素进行属性操作,主要是通过以下方法实现的:

// selector 表示具体的选择器

$("selector").val(); // 获取第一个匹配元素的value值(一般用于表单控件)

$("selector").val("Hello"); // 设置所有匹配元素的value值为"Hello"

$("selector").html(); // 获取第一个匹配元素的innerHTML值

$("selector").html("Hello"); // 设置所有匹配元素的innerHTML值为"Hello"

$("selector").text(); // 获取第一个匹配元素的innerText值(jQuery已进行兼容处理)

$("selector").text("Hello"); // 设置所有匹配元素的innerText值为"Hello"

$("selector").attr("class"); // 获取第一个匹配元素class属性

$("selector").attr("class", "code"); // 设置所有匹配元素的class属性为"code"

$("selector").removeAttr("class"); // 移除所有匹配元素的class属性

CSS操作

几乎所有的CSS操作都可以通过jQuery的css()方法来进行。

$("selector").css("margin-left"); // 获取第一个匹配元素的margin-left的属性值

$("selector").css("marginLeft"); // 与上一行代码作用相同,css()支持这两种写法

$("selector").css("marginLeft", 15); // 设置所有匹配元素的margin-left为15px(数字的默认单位

均为px)

$("selector").css( { marginLeft: 15, color: "red", fontSize: "14px"} ); // 一次性设置所有匹

配元素的多个样式属性

$("selector").css( "marginLeft", ""); // 设为空字符串,则表示删除该样式属性

动画效果

使用jQuery,我们还可以非常简单地实现动画效果。

$("selector").show(); // 显示隐藏的元素,默认不带过渡动画效果

$("selector").show( 400 ); // 显示隐藏的元素,带有400毫秒的过渡动画效果

$("selector").hide(); // 隐藏显示的元素,其用法与show()相同

$("selector").slideDown(); // 显示隐藏的元素,带有向下滑动的过渡动画效果

$("selector").slideUp(); // 隐藏显示的元素,带有向上滑动的过渡动画效果

$("selector").fadeIn(); // 显示隐藏的元素,带有淡入的过渡动画效果

$("selector").fadeOut(); // 隐藏显示的元素,带有淡出的过渡动画效果

jQuery核心:事件处理

function handler( event ){

    // 事件处理函数的执行代码

    // 参数event表示当前事件对象

    // 函数内的this表示触发事件的当前DOM元素(不是jQuery对象)

   // 如果函数的返回值为false,可以阻止事件冒泡和元素的默认事件行为。

$("selector").click( handler );

$("selector").on( "click", handler );

$("selector").one( "click", handler );

}

// bind()等事件方法均支持为多个事件(以空格隔开)绑定同一个处理函数

$("selector").bind( "mouseenter mouseleve", function(event){

    if(event.type == "mouseenter"){

        // mouseenter事件的执行代码

    }else if(event.type == "mouseleve"){

        // mouseleve事件的执行代码     

    }

} );

// 将JSON字符串转为对应的JS对象

var jsonObj = $.parseJSON( '{ "name": "CodePlayer", "age": 18 }' );

var jsonArray = $.parseJSON( '[ 12, "CodePlayer", true ]' );

// $.each()用于遍历数组元素或对象属性

var array = [ 12, "jQuery", true ];

$.each( array, function(i, value){

    // i 表示当前迭代元素的索引或对象的属性名称

    // value 表示当前迭代的数组元素或对象的属性值

    // this 与  value 相同

    alert( i + " = " + value );

    // 如果函数return false,将终止遍历

});

明天计划的事:

            1,开始任务5的编写      

            

遇到的问题:

           

 

收获:

JQ有点类似于CSS写法,当然JQ相对于原生可以简写很多代码。



返回列表 返回列表
评论

    分享到