zoukankan      html  css  js  c++  java
  • jQuery之事件对象的属性

    事件对象是有属性的,能够灵活的利用,对于处理一些问题很有帮助。

    获取事件的类型:

    <script>
    $(function(){
        $("a").click(function(event) {
          alert(event.type);//获取事件类型
          //return false;//阻止链接跳转
          event.preventDefault();
        });
    })
    </script>

    通过event.type 获取事件的类型。

    html部分代码如下:

    <body>
    <a href='http://google.com'>click me .</a>
    </body>

    下面是获取事件目标的属性值的代码:

     <script>
    $(function(){
        $("a[href=http://google.com]").click(function(event) {
          alert(event.target.href);//获取触发事件的<a>元素的href属性值
          return false;//阻止链接跳转
        });
    })
      </script>

    可以获取到属性href的值为‘http://google.com’。

    这里还有要注意的就是,这个选择器,很特别。a[href=http://google.com]表示a标签中属性值href为http://google.com的那个a标签。举一反三的话还有一些属性选择器。

    比如:$("input[name!='newsletter']")表示input标签中name属性部位newsletter的。

    $("input[name^='news']")表示查找所有name属性以news开始的input元素。
    $("input[name$='letter']")表示查找所有name属性以letter结尾的input元素。
    $("input[name*='man']")表示name属性中包含man的input元素。

    还可以获取鼠标对应的坐标值,x与y。

    代码如下:

     <script>
    $(function(){
        $("a").click(function(e) {
          alert("Current mouse position: " + e.pageX + ", " + e.pageY );//获取鼠标当前相对于页面的坐标
          return false;//阻止链接跳转
        });
    })
      </script>

    这里传递的参数名不一定非要是event,可以是任意的名称,只要后面的相对应就可以。默认传入的值为event。如果你不给参数的话,就会默认传入一个叫event的参数。

    which属性可以获取相应的事件对应的值。which 属性指示按了哪个键或按钮。

    <script>
    $(function(){
        $("a").mousedown(function(e){
            alert(e.which)  // 1 = 鼠标左键 left; 2 = 鼠标中键; 3 = 鼠标右键
            return false;//阻止链接跳转
        })
    })
    </script>
    关于如何得到一个键在Javascript中的Keycode值,可以参考:
    
    
    keycode 0 = 
    keycode 1 = 
    keycode 2 = 
    keycode 3 = 
    keycode 4 = 
    keycode 5 = 
    keycode 6 = 
    keycode 7 = 
    keycode 8 = BackSpace BackSpace 
    keycode 9 = Tab Tab 
    keycode 10 = 
    keycode 11 = 
    keycode 12 = Clear 
    keycode 13 = Enter 
    keycode 14 = 
    keycode 15 = 
    keycode 16 = Shift_L 
    keycode 17 = Control_L 
    keycode 18 = Alt_L 
    keycode 19 = Pause 
    keycode 20 = Caps_Lock 
    keycode 21 = 
    keycode 22 = 
    keycode 23 = 
    keycode 24 = 
    keycode 25 = 
    keycode 26 = 
    keycode 27 = Escape Escape 
    keycode 28 = 
    keycode 29 = 
    keycode 30 = 
    keycode 31 = 
    keycode 32 = space space 
    keycode 33 = Prior 
    keycode 34 = Next 
    keycode 35 = End 
    keycode 36 = Home 
    keycode 37 = Left 
    keycode 38 = Up 
    keycode 39 = Right 
    keycode 40 = Down 
    keycode 41 = Select 
    keycode 42 = Print 
    keycode 43 = Execute 
    keycode 44 = 
    keycode 45 = Insert 
    keycode 46 = Delete 
    keycode 47 = Help 
    keycode 48 = 0 equal braceright 
    keycode 49 = 1 exclam onesuperior 
    keycode 50 = 2 quotedbl twosuperior 
    keycode 51 = 3 section threesuperior 
    keycode 52 = 4 dollar 
    keycode 53 = 5 percent 
    keycode 54 = 6 ampersand 
    keycode 55 = 7 slash braceleft 
    keycode 56 = 8 parenleft bracketleft 
    keycode 57 = 9 parenright bracketright 
    keycode 58 = 
    keycode 59 = 
    keycode 60 = 
    keycode 61 = 
    keycode 62 = 
    keycode 63 = 
    keycode 64 = 
    keycode 65 = a A 
    keycode 66 = b B 
    keycode 67 = c C 
    keycode 68 = d D 
    keycode 69 = e E EuroSign 
    keycode 70 = f F 
    keycode 71 = g G 
    keycode 72 = h H 
    keycode 73 = i I 
    keycode 74 = j J 
    keycode 75 = k K 
    keycode 76 = l L 
    keycode 77 = m M mu 
    keycode 78 = n N 
    keycode 79 = o O 
    keycode 80 = p P 
    keycode 81 = q Q at 
    keycode 82 = r R 
    keycode 83 = s S 
    keycode 84 = t T 
    keycode 85 = u U 
    keycode 86 = v V 
    keycode 87 = w W 
    keycode 88 = x X 
    keycode 89 = y Y 
    keycode 90 = z Z 
    keycode 91 = 
    keycode 92 = 
    keycode 93 = 
    keycode 94 = 
    keycode 95 = 
    keycode 96 = KP_0 KP_0 
    keycode 97 = KP_1 KP_1 
    keycode 98 = KP_2 KP_2 
    keycode 99 = KP_3 KP_3 
    keycode 100 = KP_4 KP_4 
    keycode 101 = KP_5 KP_5 
    keycode 102 = KP_6 KP_6 
    keycode 103 = KP_7 KP_7 
    keycode 104 = KP_8 KP_8 
    keycode 105 = KP_9 KP_9 
    keycode 106 = KP_Multiply KP_Multiply 
    keycode 107 = KP_Add KP_Add 
    keycode 108 = KP_Separator KP_Separator 
    keycode 109 = KP_Subtract KP_Subtract 
    keycode 110 = KP_Decimal KP_Decimal 
    keycode 111 = KP_Divide KP_Divide 
    keycode 112 = F1 
    keycode 113 = F2 
    keycode 114 = F3 
    keycode 115 = F4 
    keycode 116 = F5 
    keycode 117 = F6 
    keycode 118 = F7 
    keycode 119 = F8 
    keycode 120 = F9 
    keycode 121 = F10 
    keycode 122 = F11 
    keycode 123 = F12 
    keycode 124 = F13 
    keycode 125 = F14 
    keycode 126 = F15 
    keycode 127 = F16 
    keycode 128 = F17 
    keycode 129 = F18 
    keycode 130 = F19 
    keycode 131 = F20 
    keycode 132 = F21 
    keycode 133 = F22 
    keycode 134 = F23 
    keycode 135 = F24 
    keycode 136 = Num_Lock 
    keycode 137 = Scroll_Lock 
    keycode 138 = 
    keycode 139 = 
    keycode 140 = 
    keycode 141 = 
    keycode 142 = 
    keycode 143 = 
    keycode 144 = 
    keycode 145 = 
    keycode 146 = 
    keycode 147 = 
    keycode 148 = 
    keycode 149 = 
    keycode 150 = 
    keycode 151 = 
    keycode 152 = 
    keycode 153 = 
    keycode 154 = 
    keycode 155 = 
    keycode 156 = 
    keycode 157 = 
    keycode 158 = 
    keycode 159 = 
    keycode 160 = 
    keycode 161 = 
    keycode 162 = 
    keycode 163 = 
    keycode 164 = 
    keycode 165 = 
    keycode 166 = 
    keycode 167 = 
    keycode 168 = 
    keycode 169 = 
    keycode 170 = 
    keycode 171 = 
    keycode 172 = 
    keycode 173 = 
    keycode 174 = 
    keycode 175 = 
    keycode 176 = 
    keycode 177 = 
    keycode 178 = 
    keycode 179 = 
    keycode 180 = 
    keycode 181 = 
    keycode 182 = 
    keycode 183 = 
    keycode 184 = 
    keycode 185 = 
    keycode 186 = 
    keycode 187 = acute grave 
    keycode 188 = comma semicolon 
    keycode 189 = minus underscore 
    keycode 190 = period colon 
    keycode 191 = 
    keycode 192 = numbersign apostrophe 
    keycode 193 = 
    keycode 194 = 
    keycode 195 = 
    keycode 196 = 
    keycode 197 = 
    keycode 198 = 
    keycode 199 = 
    keycode 200 = 
    keycode 201 = 
    keycode 202 = 
    keycode 203 = 
    keycode 204 = 
    keycode 205 = 
    keycode 206 = 
    keycode 207 = 
    keycode 208 = 
    keycode 209 = 
    keycode 210 = plusminus hyphen macron 
    keycode 211 = 
    keycode 212 = copyright registered 
    keycode 213 = guillemotleft guillemotright 
    keycode 214 = masculine ordfeminine 
    keycode 215 = ae AE 
    keycode 216 = cent yen 
    keycode 217 = questiondown exclamdown 
    keycode 218 = onequarter onehalf threequarters 
    keycode 219 = 
    keycode 220 = less greater bar 
    keycode 221 = plus asterisk asciitilde 
    keycode 222 = 
    keycode 223 = 
    keycode 224 = 
    keycode 225 = 
    keycode 226 = 
    keycode 227 = multiply division 
    keycode 228 = acircumflex Acircumflex 
    keycode 229 = ecircumflex Ecircumflex 
    keycode 230 = icircumflex Icircumflex 
    keycode 231 = ocircumflex Ocircumflex 
    keycode 232 = ucircumflex Ucircumflex 
    keycode 233 = ntilde Ntilde 
    keycode 234 = yacute Yacute 
    keycode 235 = oslash Ooblique 
    keycode 236 = aring Aring 
    keycode 237 = ccedilla Ccedilla 
    keycode 238 = thorn THORN 
    keycode 239 = eth ETH 
    keycode 240 = diaeresis cedilla currency 
    keycode 241 = agrave Agrave atilde Atilde 
    keycode 242 = egrave Egrave 
    keycode 243 = igrave Igrave 
    keycode 244 = ograve Ograve otilde Otilde 
    keycode 245 = ugrave Ugrave 
    keycode 246 = adiaeresis Adiaeresis 
    keycode 247 = ediaeresis Ediaeresis 
    keycode 248 = idiaeresis Idiaeresis 
    keycode 249 = odiaeresis Odiaeresis 
    keycode 250 = udiaeresis Udiaeresis 
    keycode 251 = ssharp question backslash 
    keycode 252 = asciicircum degree 
    keycode 253 = 3 sterling 
    keycode 254 = Mode_switch

    以上是js中的键值参考,其中比较重要的有13(enter),32(空格),27(ESC),16(Shift),17(Ctrl),18(Alt)。

    更多的值可以通过下面的jQuery来获取:

    <script>
    $(function(){
        $("input").keyup(function(e){//获取keyup时间的值
            alert(e.which);
        })
    })
    </script>
  • 相关阅读:
    深刻理解ajax的success和error的实质和执行过程
    再次遇到 js报错: expected expression, get ')' 或 get ';', '<'等错误?
    怎样让一行中的 文字 input输入框 按钮button它们在同一个高度上? 它们中的文字 是 垂直居中对齐
    怎样阻止input file文件域的change/onchange事件多次重复执行?
    如何在 messager/alert/confirm等消息提示框中 获取 / 设置 嵌入 html内容中的 input[type=checkbox]等的选中状态?
    异步函数造成的问题: 怎样确保异步执行的FileReader onload成功后才执行后面的语句?
    如何退出vim的宏记录模式
    bs模态框中的form获取或设置表单及其中元素用nam不能用id?
    关于git 的理解3
    关于git的理解2
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/2680299.html
Copyright © 2011-2022 走看看