jQueryHTML与插件

1.jquery事件机制

(1)注册事件

bind()、on()方法向被选元素添加一个或多个事件处理程序,以及当事件发生时运行的函数

 $("#header1").bind({

    mouseover() {

      $(this).css("background-color", "blue");

    },

    mouseout() {

      $(this).css("background-color", "black");

    }

  })

 $("p").on("click",function(){ alert("段落被点击了。"); });

(2)委托事件

delegate() 方法为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数

$("div").delegate("p","click",function(){    $("p").css("background-color","pink");});

(3)时间对象event

event对象有以下属性

type:事件类型,比如click。

which:触发该事件的鼠标按钮或键盘的键。

target:事件发生的初始对象。

data:传入事件对象的数据。

pageX:事件发生时,鼠标位置的水平坐标(相对于页面左上角)。

pageY:事件发生时,鼠标位置的垂直坐标(相对于页面左上角

$("button").click(function(event){ 

          console.log(evet);

  });

(4)each()方法

each() 方法为每个匹配元素规定要运行的函数。

$("button").click(function(){ 

$("li").each(function(){ 

alert($(this).text()) 

});  

});

(5)jQuery.each() 函数用于遍历指定的对象和数组。

  // $.each(数组或对象,回调函数)

  var arr = [10, 20, 30, 40];

  $.each(arr, function (index, value) {

    console.log(`我是第${index + 1}元素,值是${value}`);

  })

  let obj = {

    name: "小",

    age: 15,

    eat() {

      return 1;

    }

  }

  $.each(obj, (key, value) => {

    console.log(`${key}:${value}`);

  })

2、jQuery 对HTML的设置与捕获

jQuery 中非常重要的部分,就是操作 DOM 的能力。

jQuery 提供一系列与 DOM 相关的方法,这使访问和操作元素和属性变得很容易。

(1)、html()

html() - 设置或返回所选元素的内容(包括 HTML 标记)。

$("#btn2").click(function(){

 alert("HTML: " + $("#test").html());

});

$("#btn2").click(function(){ 

$("#test2").html("Hello world!");

});

(2)、text()

text() - 设置或返回所选元素的文本内容

$("#btn1").click(function(){ 

alert("Text: " + $("#test").text());

});

$("#btn1").click(function(){ 

$("#test1").text("Hello world!");

});

(3)、val()

val() - 设置或返回表单字段的值

$("#btn1").click(function(){ 

alert("值为: " + $("#test").val());

});

$("#btn3").click(function(){ 

$("#test3").val("RUNOOB");

});

(4)、text()、html() 以及 val() 的回调函数

上面的三个 jQuery 方法:text()、html() 以及 val(),同样拥有回调函数。回调函数有两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。然后以函数新值返回您希望使用的字符串。

$("#btn1").click(function(){ 

$("#test1").text(function(i,origText){ 

return "旧文本: " + origText + " 新文本: Hello world! (index: " + i + ")";

});

});

(5)、attr()、prop()

attr() 、prop()方法用于获取和返回属性值。

$("button").click(function(){ alert($("#runoob").attr("href")); });

$("button").click(function(){ $("#runoob").attr("href","http://www.runoob.com/jquery"); });

具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr();.attr不仅可以返回(设置)元素的原生属性,还可以返回(设置)自定义属性。

3、jQuery 对HTML的页面尺寸操作

通过 jQuery,很容易处理元素和浏览器窗口的尺寸。

jQuery 尺寸:

 

(1)width()和height()方法

width() 方法设置或返回元素的宽度(不包括内边距、边框或外边距)。

height() 方法设置或返回元素的高度(不包括内边距、边框或外边距)。

$("button").click(function(){

"div 的宽度是: " + $("#div1").width() + "";

    "div 的高度是: " + $("#div1").height(20);

});

(2)innerwidth()和innerheight()方法

innerWidth() 方法返回元素的宽度(包括内边距)。

innerHeight() 方法返回元素的高度(包括内边距)。

$("button").click(function(){

"div 宽度,包含内边距: " + $("#div1").innerWidth();

"div 高度,包含内边距: " + $("#div1").innerHeight();

});

(3)outerwidth()和outerheight()方法

outerWidth() 方法返回元素的宽度(包括内边距和边框)。

outerHeight() 方法返回元素的高度(包括内边距和边框)。

$("button").click(function(){ 

txt+="div 宽度,包含内边距和边框: " + $("#div1").outerWidth() 

  txt+="div 高度,包含内边距和边框: " + $("#div1").outerHeight();

  });

(4)scrolltop()和scrollleft()方法

scrollTop() 方法设置或者返回滚动条被卷去的元素的高度

scrollLeft() 方法设置或者返回滚动条被卷去的元素的宽度

$("button").click(function(){ alert($("div").scrollTop()); });

4、jQuery添加元素和删除元素

(1)、append()方法

 append() 方法在被选元素的结尾插入内容(仍然在该元素的内部)   

$("ol").append("追加列表项");

、prepend() 方法

 prepend() 方法在被选元素的开头插入内容。

$("ol").prepend("追加列表项");

(2)、after() 和 before() 方法

jQuery after() 方法在被选元素之后插入内容。

jQuery before() 方法在被选元素之前插入内容。

$("img").before("之前");

$("img").after("之后");

(3)、删除元素/内容

remove() - 删除被选元素(及其子元素)

empty() - 从被选元素中删除子元素

empty()把子元素删除掉了。本身没有删除掉。所以本身占位置

remove()把自己和子元素都删除掉了。本身已删除掉。所以不占位置

5、jquery插件的认识

(1)、插件

jquery不可能包含所有的功能,我们可以通过插件扩展jquery的功能。

jquery有着丰富的插件,使用这些插件能给jquery提供一些额外的功能。

6、jquery.color.js的使用

(1)、引入js文件

jquery中的animate动画本身不支持变色,但是jquery.color.js弥补了这一缺陷。

.color.js 依赖于 jQuery. 所以需要先引用jqueryjs:

(2)、示例

$("button").on("click", function () {

                $("div").animate({"width":200,"background-color":"red"},2000, function () {

                     alert("动画结束");

                });

            });


比丘资源网 » jQueryHTML与插件

发表回复

提供最优质的资源集合

立即查看 了解详情