关于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??的主要内容,如果未能解决你的问题,请参考以下文章