Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.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
给定一个jQuery mouseover事件,在该事件中您可以得到e。如何获取触发它的项目的宽度?_Jquery - Fatal编程技术网

给定一个jQuery mouseover事件,在该事件中您可以得到e。如何获取触发它的项目的宽度?

给定一个jQuery mouseover事件,在该事件中您可以得到e。如何获取触发它的项目的宽度?,jquery,Jquery,我有一个jQuery鼠标悬停事件,如下所示: $('#outer').mouseover(function() { console.log( e.target.width() ); }); 我正在尝试上述方法,但不起作用。如何获得触发鼠标悬停的元素的宽度 谢谢如果不想传递事件对象,还可以执行以下操作: $('#outer').mouseover(function () { console.log($(this).width()); }); 作为参数$('#ou

我有一个jQuery鼠标悬停事件,如下所示:

$('#outer').mouseover(function() {
   console.log(     e.target.width()    );
});
我正在尝试上述方法,但不起作用。如何获得触发鼠标悬停的元素的宽度


谢谢

如果不想传递事件对象,还可以执行以下操作:

$('#outer').mouseover(function () { 
    console.log($(this).width()); 
});

作为参数
$('#outer')传递。mouseover(函数(e){
谢谢,尝试了它总是输出0…这是一个svg路径元素,不确定这是否重要。您可以改为尝试:
console.log(e.target.width,e.target.getAttribute(“width”),e.target.offsetWidth);
并查看是否所有输出都是0:未定义的null 0Try
console.log(e.target.getTotalLength())
Path
元素不会像普通html元素那样具有任何标准宽度属性或方法。请注意,如果
e.target
不是
Path
元素,这将失败,因为普通元素没有
getTotalLength
方法是的,我浏览了
svgpatheElement
和t的所有方法我能得到的只有:(.由于某些原因,元素中的所有宽度/高度属性都设置为0。您可以在google chrome控制台中键入此项以获取方法列表:
svgpatheElement.prototype;
尝试使用以下错误:6492未捕获类型错误:无法读取未定义的属性“defaultView”。这是一个更好的解决方案,因为某些浏览器使用不同的获取方法使用事件目标,如
e.srcelment
,etcbtw,尝试在另一个控件(如
div
)中扭曲svg,并将其用于宽度,可以看到它在svg位于div中之前工作,但在svg中有几个路径元素。您可以发布
svg
元素,或它的一些简化版本,以便使用吗
$('#outer').mouseover(function () { 
    console.log($(this).width()); 
});