and*_*man 6 jquery highlighting
我想复制维基百科的脚注突出显示来自文本引文,单击jQuery和CSS类.我发现了一个网页,描述了如何使用CSS3以及IE的JavaScript解决方案.但是,我想仅使用jQuery这样做,因为我正在做的网站已经有一堆jQuery元素.
我想出了一个过程列表.
<p>为已突出显示的脚注标记上的标准脚注类.到目前为止,我已经提出了一些jQuery,但我非常陌生,依靠教程和插件来实现这一点.对于我还没有弄清楚的部分,这里有一些简单的英语.
$('.inlineCite').click(function() {
$('.footnoteHighlight').removeClass('footnoteHighlight').addClass('footnote');
//add highlight to id of highlightScroll
//scroll to footnote with matching id
});
Run Code Online (Sandbox Code Playgroud)
如果我有一个方法将选择器的一部分传递给函数并将其转换为变量,我相信我可以把它拉下来.最有可能的是,我确信你们中的一位大师会鞭打一些东西,这些东西让我觉得我做的任何事情都让人感到羞耻.任何帮助将不胜感激,所以提前谢谢你.
干杯.
我逐字复制了维基百科的上标标记:
<sup class="reference" id="cite_ref-1">
<a href="#cite_note-1">
<span>[</span>1<span>]</span>
</a>
</sup>
Run Code Online (Sandbox Code Playgroud)
并使用以下jQuery:
$(".reference > a").click(function() {
var href = $(this).attr("href");
var $el = $(href);
$(".ref-highlight").removeClass("ref-highlight");
$el.addClass("ref-highlight");
});
Run Code Online (Sandbox Code Playgroud)
关键是抓住href被点击的链接,然后使用它来选择元素并应用高亮类.
此外,您无需以编程方式向下滚动页面,因为浏览器会自动为您处理.
这是一个完整的工作示例:http://jsfiddle.net/andrewwhitaker/dkWJm/2/
更新:我在下面的评论中注意到你想为滚动设置动画,这是你将如何做到这一点:
$(".reference > a").click(function(event) {
event.preventDefault();
var href = $(this).attr("href");
var $el = $(href);
$(".ref-highlight").removeClass("ref-highlight");
$el.addClass("ref-highlight");
$("html, body").animate({"scrollTop": $el.offset().top}, 3000);
});
Run Code Online (Sandbox Code Playgroud)
笔记:
event.preventDefault()),这将跳转到与id点击链接匹配的元素href.animate平滑地滚动html元件向下到适当的位置,这是用确定的offset()目标元件上.duration参数(我指定3000)是你将调整延长/缩短滚动的持续时间是什么.这是一个例子:http ://jsfiddle.net/andrewwhitaker/dkWJm/4/ (更新在IE8/Chrome/FF 3中工作)
| 归档时间: |
|
| 查看次数: |
1042 次 |
| 最近记录: |