Javascript jQuery[object]问题
我想使用jQuery更新css属性,但它不起作用。使用下面代码中的警报,我的第一个警报将显示Javascript jQuery[object]问题,javascript,jquery,Javascript,Jquery,我想使用jQuery更新css属性,但它不起作用。使用下面代码中的警报,我的第一个警报将显示 url("file:///H:/Web/example/HTML/images/red-arrow-up.png") [object Object] 但是第二个警报(在if语句中)出现了 url("file:///H:/Web/example/HTML/images/red-arrow-up.png") [object Object] 但我想让它做的是更新属性并在url中从上到下更改。知道我做错
url("file:///H:/Web/example/HTML/images/red-arrow-up.png")
[object Object]
但是第二个警报(在if语句中)出现了
url("file:///H:/Web/example/HTML/images/red-arrow-up.png")
[object Object]
但我想让它做的是更新属性并在url中从上到下更改。知道我做错了什么吗
$(document).ready(function() {
$( ".portlet-header" ).click(function() {
var currValue = $(this).children(".portlet-arrow").css("background-image");
alert (currValue)
if ($("currValue:contains('up')")) {
var newValue = $(currValue.replace("up", "down"));
alert(newValue)
$(this).children(".portlet-arrow").css("background-image", newValue)
};
if ($("currValue:contains('down')")) {
var newValue = $(currValue.replace("down", "up"));
alert(newValue)
$(this).children(".portlet-arrow").css("background-image", newValue)
};
});
});
这基本上可以归结为对jQuery选择器语法的过度理解,而没有阅读文档来了解选择器的实际功能
$()
中替换(“向下”、“向上”)?这看起来像是试图用包含图像URL的字符串创建jQuery对象。不要那样做。在$()
中不能无缘无故地使用任意Javascript代码$(“currValue:contains('down')”)
并没有按照您的想法执行。该语法用于根据特定条件选择DOM节点,而不是在字符串上实现任意条件语句$(function() {
$(".portlet-header").click(function() {
var currValue = $(this).children(".portlet-arrow").css("background-image");
alert(currValue);
if (currValue.indexOf('up') != -1) {
var newValue = currValue.replace("up", "down");
}
else if (currValue.indexOf('down') != -1) {
var newValue = currValue.replace("down", "up");
}
else {
return;
}
alert(newValue);
$(this).children(".portlet-arrow").css("background-image", newValue);
});
});
警报显示[object object],因为您正在通过以下方式从字符串创建jQuery对象:
$(currValue.replace(“向上”、“向下”);
您应该使用currValue.replace(“向上”、“向下”);没有$()
也
if($(“currValue:contains('up'))){
不正确。这始终返回true,因为您正在从传递给$()的字符串创建空jQuery对象
你应使用:
currValue.indexOf('up')!=-1
或
/up/.test(currValue)
测试字符串是否包含一些子字符串。这正是我想要的。我目前正在学习javascript/jQuery,但语法很混乱。@SamWarren:我建议先学习javascript本身,然后在你感到舒服的时候添加jQuery库的用法。@SamWarren试着不要学习jQuery,而专注于javascript/DOM.相关: