Javascript 如何使用切换从url添加和删除值?
我有以下代码,当用户单击toggle以显示内容时,我想向url()添加一个哈希和id。关闭后,我想移除#2111 如何使用切换来实现这一点 CSS JQUERYJavascript 如何使用切换从url添加和删除值?,javascript,jquery,Javascript,Jquery,我有以下代码,当用户单击toggle以显示内容时,我想向url()添加一个哈希和id。关闭后,我想移除#2111 如何使用切换来实现这一点 CSS JQUERY $(document).ready(function () { var $content = $("div.moreinfo").hide(); $(".toggle").on("click", function (e) { $(this).toggleC
$(document).ready(function () {
var $content = $("div.moreinfo").hide();
$(".toggle").on("click", function (e) {
$(this).toggleClass("expanded");
if($(this).hasClass('expanded')) {
$("div.plus").hide().removeClass("closed");
$("div.minus").show().addClass("opened");
} else {
$("div.plus").show().addClass("closed");
$("div.minus").hide().removeClass("opened");
}
$content.slideToggle();
});
});
您只需将
location.hash
设置为空字符串:
location.hash = '';
或者将其设置为一个值:
$(document).ready(function () {
var $content = $("div.moreinfo").hide();
$(".toggle").on("click", function (e) {
$(this).toggleClass("expanded");
if($(this).hasClass('expanded')) {
location.hash = someValue;
} else {
location.hash = '';
}
$content.slideToggle();
});
});
谢谢,我更新了你的代码,但唯一的问题是它没有删除#。在添加#somevalue之后。因为没有从url中删除哈希。。它在页面上跳转..有没有办法删除散列,所以当我点击togle close open它自己跳转..没问题!如果不重新加载页面,就无法从url中删除哈希。也许您可以将希望用户滚动到的元素设置为id,而不是设置为
'
,您可以将其设置为该idtargetElement
$(document).ready(function () {
var $content = $("div.moreinfo").hide();
$(".toggle").on("click", function (e) {
$(this).toggleClass("expanded");
if($(this).hasClass('expanded')) {
location.hash = someValue;
} else {
location.hash = '';
}
$content.slideToggle();
});
});