欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JQuery操作样式以及JQuery事件机制

程序员文章站 2022-07-28 20:19:49
1.操作样式 1.1 css的操作 功能:设置或者修改样式,操作的是style属性 操作单个样式 设置多个样式 获取样式 注意:获取样式操作只会返回第一个元素对应的样式值 1.2width方法与height方法 设置或者获取高度,不包括内边距、边框和外边距 width() height() 不传参数 ......

1.操作样式

    1.1 css的操作
     
功能:设置或者修改样式,操作的是style属性

     操作单个样式

// name:需要设置的样式名称
// value:对应的样式值
// $obj.css(name, value);
// 使用案例
$('#one').css('background','gray');// 将背景色修改为灰色

 

      设置多个样式

// 参数是一个对象,对象中包含了需要设置的样式名和样式值
// $obj.css(obj);
// 使用案例
$('#one').css({
    'background':'gray',
    'width':'400px',
    'height':'200px'
});

        获取样式

// name:需要获取的样式名称
// $obj.css(name);
// 案例
$('div').css('background-color');

        注意:获取样式操作只会返回第一个元素对应的样式值

       1.2width方法与height方法     

        设置或者获取高度,不包括内边距、边框和外边距  width() height() 不传参数表示获取,传递参数表示设置。(传递参数时,可以不用带单位px)        

// 带参数表示设置高度
$('img').height(200);
// 不带参数获取高度
$('img').height();

         获取网页的可视区宽高   

// 获取可视区宽度
$(window).width();
// 获取可视区高度
$(window).height();

        1.3  innerwidth/innerheight/outerwidth/outerheight

innerwidth()/innerheight()    方法返回元素的宽度/高度(包括内边距)。
outerwidth()/outerheight()  方法返回元素的宽度/高度(包括内边距和边框)。
outerwidth(true)/outerheight(true)  方法返回元素的宽度/高度(包括内边距、边框和外边距)。

         1.4scrolltop与scrollleft

         设置或者获取垂直滚动条的位置

// 获取页面被卷曲的高度
$(window).scrolltop();
// 获取页面被卷曲的宽度
$(window).scrollleft();

2.事件机制

 

         2.1on注册事件

         on注册简单事件:

// 表示给$(selector)绑定事件,并且由自己触发,不支持动态绑定。
$(selector).on( 'click', function() {});

            on注册事件委托:

// 表示给$(selector)绑定代理事件,当必须是它的内部元素span才能触发这个事件,支持动态绑定
$(selector).on( 'click','span', function() {});

             on注册事件的语法:

 

// 第一个参数:events,绑定事件的名称可以是由空格分隔的多个事件(标准事件或者自定义事件)
// 第二个参数:selector, 执行事件的后代元素(可选),如果没有后代元素,那么事件将由自己执行。
// 第三个参数:data,传递给处理函数的数据,事件触发的时候通过event.data来使用(不常使用)
// 第四个参数:handler,事件处理函数
$(selector).on(events[,selector][,data],handler);

 

              2.2事件解绑:

            off方式:

// 解绑匹配元素的所有事件
$(selector).off();
// 解绑匹配元素的所有click事件
$(selector).off('click');

              2.3触发事件:

$(selector).click(); // 触发 click事件
$(selector).trigger('click');

              2.4部分jquery事件对象

            jquery事件对象其实就是js事件对象的一个封装,处理了兼容性。

// screenx和screeny    对应屏幕最左上角的值
// clientx和clienty    距离页面左上角的位置(忽视滚动条)
// pagex和pagey    距离页面最顶部的左上角的位置(会计算滚动条的距离)

// event.keycode    按下的键盘代码
// event.data    存储绑定事件时传递的附加数据

// event.stoppropagation()    阻止事件冒泡行为
// event.preventdefault()    阻止浏览器默认行为
// return false:既能阻止事件冒泡,又能阻止浏览器默认行为。