Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.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
Javascript 为什么IE8在JS字符串concat中添加空格?_Javascript_Jquery_Internet Explorer 8 - Fatal编程技术网

Javascript 为什么IE8在JS字符串concat中添加空格?

Javascript 为什么IE8在JS字符串concat中添加空格?,javascript,jquery,internet-explorer-8,Javascript,Jquery,Internet Explorer 8,我正在写一个快速脚本来显示和隐藏ul及其内容-基本上是一个下拉菜单。 我遇到的问题在下面的代码第2行: $('#mainMenu ul li').mouseenter(function() { var dropTab = 'ul.' + $(this).attr("id") + 'Dropdown'; alert(dropTab); $(dropTab).slideToggle(); }); 在FF中工作正常,但在IE8中,dropTab字符串在第二个和第三个元

我正在写一个快速脚本来显示和隐藏ul及其内容-基本上是一个下拉菜单。 我遇到的问题在下面的代码第2行:

    $('#mainMenu ul li').mouseenter(function() {
    var dropTab = 'ul.' + $(this).attr("id") + 'Dropdown';
    alert(dropTab);
    $(dropTab).slideToggle();
});
在FF中工作正常,但在IE8中,dropTab字符串在第二个和第三个元素之间有空格,即它输出:

ul.someId                   Dropdown
当我在寻找:

ul.someIdDropdown
正如我所说,它在FF中工作得很好,但我很好奇空格是从哪里来的,因为它会阻止函数的执行


欢迎您考虑另一种方法

< P>空白明显来自代码> $$(this).Atter(“ID”)< /C>方法。IE在返回时不能输入id。您可能希望尝试将该行更改为:

var dropTab = 'ul.' + $.trim($(this).attr("id")) + 'Dropdown';

空白显然来自
$(this.attr(“id”)
方法的内部。IE在返回时不能输入id。您可能希望尝试将该行更改为:

var dropTab = 'ul.' + $.trim($(this).attr("id")) + 'Dropdown';

我同意soolhsinger的观点,不管怎样,你能再次检查一下你的“id”是否包含空格吗?这可能是一个微优化,但你应该能够使用
This.id
,而不是通过
jQuery.fn.attr
访问id。请参阅以了解更多详细信息。我同意soolhsinger的观点,不管怎样,您可以再次检查您的“id”是否包含空格吗?这可能是一个微优化,但您应该能够使用
This.id
,而不是通过
jQuery.fn.attr
访问id。有关更多详细信息,请参阅。谢谢-意识到问题源于格式错误的xslt-稍后有几个xsl:text标记,这已排序。然而,滑动切换仍然不会合作。谢谢-意识到问题是由格式错误的xslt引起的-后来有几个xsl:text标记,这已经排序好了。然而,滑动切换仍然不会合作。无聊的。