Javascript 滚动至隐藏输入
我有一个图像地图,其中包含一系列的地方。当用户单击某些区域时,一个字符串(取决于单击的位置)将发送到一个函数,该函数需要滚动到一个隐藏的输入,该输入的id等于该字符串Javascript 滚动至隐藏输入,javascript,jquery,wordpress,Javascript,Jquery,Wordpress,我有一个图像地图,其中包含一系列的地方。当用户单击某些区域时,一个字符串(取决于单击的位置)将发送到一个函数,该函数需要滚动到一个隐藏的输入,该输入的id等于该字符串 <input type="hidden" id="Nashville, TN"> <div class="speaking-date">...</div> 在他们点击的任何地方都有可变的位置 scrollTop:$j(“#”+place).offset().topI收到错误“无法读取未定义的属
<input type="hidden" id="Nashville, TN">
<div class="speaking-date">...</div>
在他们点击的任何地方都有可变的位置
scrollTop:$j(“#”+place).offset().top
I收到错误“无法读取未定义的属性'top'。
我尝试使用:
scrollTop:$j(“输入[id=“+place+”]).offset().top
但我得到错误“语法错误,无法识别的表达式:输入[id=Nashville,TN]”。我在Wordpress上这样做,这就是为什么我使用noConflict。任何帮助或提示都将不胜感激。在我看来,您有一些问题
1-您的id无效
2-隐藏输入没有定义位置,因此无法滚动到它们
尝试使用.before()创建临时输入文本,滚动到此,然后在
像这样
HTML
<input type="hidden" id="Nashville">
<div class="speaking-date">...</div>
...
JS
$(“纳什维尔”)。在(“测试”)之前;
$('html,body')。设置动画({
scrollTop:$(“#divTemp”).offset().top
}, 2000);
$(“#divTemp”).remove();
这不是HTML元素的有效ID。检查此项:尝试使用position().top而不是offset().top
<input type="hidden" id="Nashville">
<div class="speaking-date">...</div>
$("#Nashville").before("<div id='divTemp'>test</div>");
$('html, body').animate({
scrollTop: $("#divTemp").offset().top
}, 2000);
$("#divTemp").remove();