Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScriptjQuery-了解是否在函数中单击了子函数_Javascript_Jquery - Fatal编程技术网

JavaScriptjQuery-了解是否在函数中单击了子函数

JavaScriptjQuery-了解是否在函数中单击了子函数,javascript,jquery,Javascript,Jquery,这是HTML: <div class="videoWrapper" onclick="clickVideo(this);"> 我需要知道是否在元素内部单击了child.volume,所以 这个:logso.target.class;给出错误:无法读取未定义的属性“class” 我知道这种方法:但有没有一种方法可以为我的案例做到这一点呢?检查下面的代码片段: 尝试单击前两个彩色元素,然后单击包括父元素在内的其他元素,并检查控制台 功能${ "

这是HTML:

<div class="videoWrapper" onclick="clickVideo(this);">
我需要知道是否在元素内部单击了child.volume,所以

这个:logso.target.class;给出错误:无法读取未定义的属性“class”

我知道这种方法:但有没有一种方法可以为我的案例做到这一点呢?

检查下面的代码片段:

尝试单击前两个彩色元素,然后单击包括父元素在内的其他元素,并检查控制台

功能${ "严格使用",; $function{ var parent=$'.parent', child1=父项。查找'.child1', child2=parent.find'.child2'; 父项。单击时,函数e{ 如果$e.target.hasClass'child1'{ console.log'child1已被点击'; }如果$e.target.hasClass'child2'{ console.log'child2已被点击'; }否则{ 日志“其他元素或父元素已被单击”; } }; }; }jQuery; .家长{ 宽度:200px; 高度:150像素; 背景色:eee; } .parent[类*='child']{ 高度:30px; } .父母,孩子{ 背景色:ddd; } .父母,孩子{ 背景色:ccc; } .父母、孩子{ 背景色:bbb; } .父母、孩子{ 背景色:aaa; }
什么是传递给函数的?是事件吗?@MMDM是clicked元素,我需要确定子类。卷是否在itI内部单击。我认为目标是事件属性,无法通过其他元素访问。在您的案例中,您可以在clicked元素(父元素)中访问它,并检查目标是否具有与您所需的相同的类,如果是,则采取行动。能否显示一个示例?请编辑您的问题,以显示足够的代码,以便我们重现您的问题。你的HTML是什么?还有其他相关的JavaScript吗?CSS?您遇到了什么错误?你期待什么?出了什么问题?它可能也值得你去刷新你的记忆。你在哪里使用它?您应该定义一次事件,而不是在一些多次调用的代码中定义事件,但正如标题所述,我需要在给定函数中进行检查:/您应该在知道单击的元素是您想要的之后调用该函数,这意味着您应该在事件处理程序中调用函数。我知道我刚才说过,当我在函数中设置侦听器时,会发生什么,我希望检查的位置。在第一次单击时,除了第一次设置侦听器之外,不会发生任何事情。请检查答案编辑。我基本上想要的是clickVideo函数中的所有内容OK,正如您所说的,clicked元素也是如此。在何处定义单击事件?您还应该将事件传递给这个函数,您可以检测它是否是您想要的元素并采取行动。我会编辑答案。。。
function clickVideo(so){
        var vid = $(so).find(".video");