Javascript 使用jQuery在slideToggle删除display:hidden属性后将焦点设置为元素
所以我看了很多例子,但似乎仍然无法理解这一点。我隐藏了一个元素“display:none”,直到它被使用jQuery slideToggle的链接扩展。工作,但我需要的重点去新元素司。我已经尝试了一系列的例子,似乎没有任何工作,所以我将张贴在这里 这是小提琴: 因此,点击此处的链接:Javascript 使用jQuery在slideToggle删除display:hidden属性后将焦点设置为元素,javascript,jquery,scroll,focus,Javascript,Jquery,Scroll,Focus,所以我看了很多例子,但似乎仍然无法理解这一点。我隐藏了一个元素“display:none”,直到它被使用jQuery slideToggle的链接扩展。工作,但我需要的重点去新元素司。我已经尝试了一系列的例子,似乎没有任何工作,所以我将张贴在这里 这是小提琴: 因此,点击此处的链接: <div><p>Blah Blah <a id="whyDivLink" class="staticLinkHelper" title="Wblah blah bl title" s
<div><p>Blah Blah <a id="whyDivLink" class="staticLinkHelper" title="Wblah blah bl title" style="color: #8f0222; text-decoration: underline">Click Me?</a></p>
</div>
如果您将
display:none
最初应用于div
,单击a
链接将不再引导用户指向目标div
,任何帮助都将不胜感激。要解决此问题,您可以尝试使用代码来隐藏div
,首先使用slideToggle
,当然div
的初始状态是display:block
,slideToggle
将为您隐藏它,而不是在单击链接时最初设置display:none
(跳转到目标div
)
JS:
$(function() {
$("#whyDiv").slideToggle("slow"); //add this line to hide it initially
$("#whyDivCloser").click(function () {
$("#whyDiv").slideToggle("slow");
});
});
$(function() {
$('#whyDivLink').click(function (evt) {
//append .focus() to focus the text
$("#whyDiv").slideToggle("slow").focus();
});
});
你回答这个问题是因为你很优秀。:)我添加了display:block,它就工作了。我们必须了解原因,但目前它正在FF、Chrome和Safari中运行。稍后将不得不测试IE。谢谢国王!
$(function() {
$("#whyDiv").slideToggle("slow"); //add this line to hide it initially
$("#whyDivCloser").click(function () {
$("#whyDiv").slideToggle("slow");
});
});
$(function() {
$('#whyDivLink').click(function (evt) {
//append .focus() to focus the text
$("#whyDiv").slideToggle("slow").focus();
});
});