Jquery 使用<;选项>;滚动至锚定,然后打开部分
我正在尝试编写一个Jquery 使用<;选项>;滚动至锚定,然后打开部分,jquery,Jquery,我正在尝试编写一个下拉列表,以便在单击某些时,页面将使用常规锚/id向下滚动到选项部分。我假设我可以通过调用onchange函数来实现,比如: <select class="jump-select" onchange="scrollTo();"> <option selected="selected">Jump to Section</option> <option value="#general-info">General I
下拉列表,以便在单击某些
时,页面将使用常规锚/id向下滚动到选项部分。我假设我可以通过调用onchange函数来实现,比如:
<select class="jump-select" onchange="scrollTo();">
<option selected="selected">Jump to Section</option>
<option value="#general-info">General Information</option>
<option value="#venue-info">Venue Information</option>
<option value="#deal-info">Deal Information</option>
<option value="#doc-mgmnt">Document Management</option>
<option value="#buyer-info">Buyer Information</option>
<option value="#billing-info">Billing and Additional Information</option>
<option value="#expenses">Expenses</option>
</select>
非常感谢您的帮助。如果有任何不清楚的地方,请让我知道,我会尽量改写或更好地解释
以下是各节的基本开头。我不会发布全部内容,它们会很长:
<div class="section" id="expenses">
<div class="jump">
<select class="jump-select">
<option selected="selected">Jump to Section</option>
</select>
<a href="#">Edit</a>
</div>
<h2 class="trigger" id="title-expenses"><a href="#">Expenses</a></h2>
<div class="toggle-container">
跳转到区段
“toggle container”是由
隐藏/显示的div。从
标记的值中删除哈希标记,删除onchange
属性并将其添加到代码中
$('.jump-select').change(function() {
var cTarget = $(this).val();
window.location.hash = cTarget;
});
从
标记的值中删除散列标记,删除onchange
属性并将其添加到代码中
$('.jump-select').change(function() {
var cTarget = $(this).val();
window.location.hash = cTarget;
});
您可以添加一个
change
处理程序来执行此处的工作,使用值中已有的选择器:
$(".jump-select").change(function() {
var val = $(this).val();
$(val + ":hidden").slideDown("slow").prev().addClass("active");
window.location.hash = val;
});
这是因为如果它已经扩展了,就没有理由去处理它()
如果你想让它有一点天赋,你可以将动画设置到该部分,而不是跳到那里,如下所示:
$(".jump-select").change(function() {
var val = $(this).val();
$(val + ":hidden").slideDown("slow").prev().addClass("active");
$("html, body").animate({ scrollTop: $(val).scrollTop() }, 200);
});
如果您不希望它正好位于顶部,您可以减去一些金额;如果您希望
位于窗口的最顶部,包括在滚动视图中,您可以使用更改处理程序来执行此操作,使用值中已有的选择器:
$(".jump-select").change(function() {
var val = $(this).val();
$(val + ":hidden").slideDown("slow").prev().addClass("active");
window.location.hash = val;
});
这是因为如果它已经扩展了,就没有理由去处理它()
如果你想让它有一点天赋,你可以将动画设置到该部分,而不是跳到那里,如下所示:
$(".jump-select").change(function() {
var val = $(this).val();
$(val + ":hidden").slideDown("slow").prev().addClass("active");
$("html, body").animate({ scrollTop: $(val).scrollTop() }, 200);
});
如果你不希望它精确地位于顶部,你可以减去一些金额,或者如果你希望
位于窗口的最顶部,包括在滚动视图中,可以使用$(val).prev().scrollTop()
。好吧,不知道你的html页面的结构,我想在这里猜一下
尝试在javascript部分中添加此选项
$('.jump-select').change(function() {
var a = $(this).val();
$(a).find('h2.trigger').click();
window.location.hash = a;
});
在不知道html页面结构的情况下,我会在这里猜测
尝试在javascript部分中添加此选项
$('.jump-select').change(function() {
var a = $(this).val();
$(a).find('h2.trigger').click();
window.location.hash = a;
});
你能为一个部分显示一些html吗?你能为一个部分显示一些html吗。。。那么隐藏部分呢?主要问题是使用
来更改哈希值。该区域的开放取决于该区域的结构。他给出了
相关向下滑动的示例代码,下一项是目标;但不知道这和锚有什么关系。锚定位于
上方、内部等。锚定运行的是name
属性,而不是ID,因此必须使用a[name=…]
作为目标,除非ID设置相同。锚定将位于其上。。。不确定这是否有帮助。如果您需要更多信息,请告诉我。@jnarciso我想您是指其中的内容吧<代码>一般信息
?是的,这就是我的意思。这个例子和上面的例子都可以跳转到各个部分。如果我们能让它向下滚动,然后打开这些部分,我就可以做生意了!是 啊那么隐藏部分呢?主要问题是使用
来更改哈希值。该区域的开放取决于该区域的结构。他给出了
相关向下滑动的示例代码,下一项是目标;但不知道这和锚有什么关系。锚定位于
上方、内部等。锚定运行的是name
属性,而不是ID,因此必须使用a[name=…]
作为目标,除非ID设置相同。锚定将位于其上。。。不确定这是否有帮助。如果您需要更多信息,请告诉我。@jnarciso我想您是指其中的内容吧<代码>一般信息
?是的,这就是我的意思。这个例子和上面的例子都可以跳转到各个部分。如果我们能让它向下滚动,然后打开这些部分,我就可以做生意了!这似乎是我想要实现的,但我无法实现。不幸的是,我不是100%确定为什么。@ JNCISISO试着把Nick’放在中间行的VAL前面:<代码> $('''''+'Val+:“隐藏”)…< /Cord> @ jncISOIS-你有一个示例页面吗?这个信息有点敏感,我不想在这里发布dev链接。让我知道,我会尽快寄过来的。谢谢你的帮助。这似乎是我想要实现的,但我无法实现。不幸的是,我不是100%确定为什么。@ JNCISISO试着把Nick’放在中间行的VAL前面:<代码> $('''''+'Val+:“隐藏”)…< /Cord> @ jncISOIS-你有一个示例页面吗?这个信息有点敏感,我不想在这里发布dev链接。让我知道,我会尽快寄过来的。谢谢你的帮助。