基本我知道,但是如何使用jquery删除url字符串?
例如,假设您使用attr
将图像的url字符串分配给名为#picbox的div,如何删除第一个url字符串(比如单击函数),然后重新定义第二个url字符串到div?
var urlString1 = "images/1.jpg";
var urlString2 = "images/2.jpg";
$("#picbox").attr('src', urlString1);
$("#changeString").click(function(){
// remove urlString1 then replace with urlString2
});
答案 0 :(得分:4)
无需删除它。设置新的src
会自动删除旧的$("#picbox").attr('src', urlString1);
$("#changeString").click(function(){
$("#picbox").attr('src', urlString2);
});
:
$img = $("#picbox").attr('src', urlString1);
$("#changeString").click(function(){
$img.attr('src', urlString2);
});
为了获得更好的性能,您应该缓存该选择器:
{{1}}
答案 1 :(得分:1)
目前尚不清楚您要实现的目标,并且代码的第三行存在错误。
$("#picbox").attr(urlString1); // tries to read attribute named "images/1.jpg" of #picbox
我假设你想要这样的东西:
$("#picbox").attr("data-url", urlString1); // stores value "images/1.jpg" in "data-url" attribute
$("#changeString").click(function(event) {
$("#picbox").attr("data-url", urlString2); // replace previous value with new
});
您可以将属性名称“data-url”替换为适合您情况的名称。此外,如果您继续使用数据属性,则可以使用:
$("#picbox").data("url", urlString1);
实现与.attr()
相同答案 2 :(得分:0)
var urlString1 = "images/1.jpg";
var urlString2 = "images/2.jpg";
$("#picbox").attr("src",urlString1);
$("#changeString").click(function(){
// remove urlString1 then replace with urlString2
$("#picbox").attr("src",urlString2);
});