关于jQuery通过this获取this里的class??

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于jQuery通过this获取this里的class??相关的知识,希望对你有一定的参考价值。

参考技术A 根据你提供的 onmouseover="foodMouseOver(this)" 判断你在 javascript 中应该有这样一个函数

function foodMouseOver(ele) ...

注意这个函数如果写在 jQuery 外面,那么在函数内你就无法使用 $ (jQuery)。
如果写在 jQuery 里面,你需要写成 window.foodMouseOver = function(ele) ...;

完整代码:

$(function()
// 这里的参数 ele 就是传过来的 this
window.foodMouseOver = function(ele)
// 变量 foodinfo 就是你要获取的 div.foodInfo
var foodinfo = $(ele).find(".foodInfo");
// 显示 foodInfo
foodinfo.show();
;
);

--------------------------------

给你一点建议,尽量分离 html,CSS,和 Javascript。也就是尽量***避免***使用
----- 内联样式:<div style="width: 200px;">
----- 内联脚本:<a onclick="doSomething();">

你的例子中可以把 onmouseover="foodMouseOver(this)" 去掉,在 jQuery 中直接写为

$(".food").on("mouseover", function()
$(this).find(".foodInfo").show();
);本回答被提问者采纳
参考技术B this代表的是当前进行操作的元素,如果可以拿到this,那就说明已经知道class了

jQuery 语法

Query 语法是通过选取 HTML 元素,并对选取的元素执行某些操作。

基础语法: $(selector).action()

  • 美元符号定义 jQuery
  • 选择符(selector)"查询"和"查找" HTML 元素
  • jQuery 的 action() 执行对元素的操作

实例:

  • $(this).hide() - 隐藏当前元素

  • $("p").hide() - 隐藏所有 <p> 元素

  • $("p.test").hide() - 隐藏所有 class="test" 的 <p> 元素

  • $("#test").hide() - 隐藏所有 id="test" 的元素

 

文档就绪事件

您也许已经注意到在我们的实例中的所有 jQuery 函数位于一个 document ready 函数中:

$(document).ready(function(){

// 开始写 jQuery 代码...

 

这是为了防止文档在完全加载(就绪)之前运行 jQuery 代码,即在 DOM 加载完成后才可以对 DOM 进行操作。

如果在文档没有完全加载之前就运行函数,操作可能失败。下面是两个具体的例子:

  • 试图隐藏一个不存在的元素
  • 获得未完全加载的图像的大小

 

提示:简洁写法(与以上写法效果相同):

$(function(){
// 开始写 jQuery 代码...
});
 
以上两种方式你可以选择你喜欢的方式实现文档就绪后执行 jQuery 方法
 
 

jQuery 入口函数:

$(document).ready(function(){
    // 执行代码
});
或者
$(function(){
    // 执行代码
});



JavaScript 入口函数:

window.onload = function () {
    // 执行代码
}


jQuery 入口函数与 JavaScript 入口函数的区别:

  • jQuery 的入口函数是在 html 所有标签(DOM)都加载之后,就会去执行。
  • JavaScript 的 window.onload 事件是等到所有内容,包括外部图片之类的文件加载完后,才会执行。


 
 









以上是关于关于jQuery通过this获取this里的class??的主要内容,如果未能解决你的问题,请参考以下文章

使用长度而不是事件处理程序通过 this 获取元素

关于箭头函数里的this

关于js里的this指向,函数的prototype,闭包理解

js和jquery通过this获取html标签中的属性值

jquery获取radio值求教

jQuery 语法