私が使用しているこのスクリプトに欠陥がありました。グローバルな「a」タグを呼び出しています-これは私を殺しています。
以下のスニペット内の「a」タグ内で特定のクラス リンクを定義する適切な方法は何ですか?
var allLinks = document.getElementsByTagName('.mainnav');
明らかにそれはうまくいきませんでした。どちらかがした.mainnav a
完全なスニペット:
var ss = {
fixAllLinks: function() {
// Get a list of all links in the page
var allLinks = document.getElementsByTagName('.mainnav');
// Walk through the list
for (var i=0;i<allLinks.length;i++) {
var lnk = allLinks[i];
if ((lnk.href && lnk.href.indexOf('#') != -1) &&
( (lnk.pathname == location.pathname) ||
('/'+lnk.pathname == location.pathname) ) &&
(lnk.search == location.search)) {
// If the link is internal to the page (begins in #)
// then attach the smoothScroll function as an onclick
// event handler
ss.addEvent(lnk,'click',ss.smoothScroll);
}
}
},
更新:異なるタグを交換した後。クラスで呼び出そうとすると、スクリプトが機能しなくなりました。完全なプラグインは次のとおりです。http://www.kryogenix.org/code/browser/smoothscroll/すべての「a」タグではなく、特定のクラスでこれを使用したいだけです。
提案; ありがとう。