我有这样的代码:
$(function() {
if ($("div#ProductDetail_ProductDetails_div2 table tbody tr").text().trim() == '') {
$("div#ProductDetail_ProductDetails_div2").css("border", "0px");
$("div#ProductDetail_ProductDetails_div").css({'border-bottom-left-radius' : '5px', '-moz-border-bottom-left-radius' : '5px', '-webkit-border-bottom-left-radius' : '5px', 'border-bottom-right-radius' : '5px', '-moz-border-bottom-right-radius' : '5px', '-webkit-border-bottom-right-radius' : '5px'});
}
});
Run Code Online (Sandbox Code Playgroud)
基本上,它说如果没有嵌套的内容<tr>,运行一些CSS修改......
但是,在IE8的调试控制台中,它在这一行上说if ($("div#ProductDetail_ProductDetails_div2 table tbody tr").text().trim() == '') { "对象不支持这个属性或方法"我不知道这意味着什么.
这导致网站上的其他jQuery出现一些问题.我知道,当我评论它时,该网站运作完美.谁能告诉我让IE抱怨的代码有什么问题?谢谢.
jquery trim功能就是这样的
jQuery.trim( str )
Run Code Online (Sandbox Code Playgroud)
你可能需要得到td文本值进行比较.
像这样改变它
if ($.trim($("div#ProductDetail_ProductDetails_div2 table tbody tr td:first").text())=="")
{
// Rest of the code
Run Code Online (Sandbox Code Playgroud)
http://api.jquery.com/jQuery.trim/