[英]Combine two specific javascript functions into one function for desired effect?
如何將兩個特定的javascript函數合並為一個函數以達到預期的效果? 或者,如果有人有其他解決方案,我歡迎您。
這是JS / Jquery,使用jquery.easing.1.3.js使頁面滾動到href錨定網址
$(function() {
$('a').bind('click',function(event){
var $anchor = $(this);
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top
}, 1500,'easeInOutExpo');
event.preventDefault();
});
});
這是一個較舊的JS,用於隱藏/顯示一系列div,只允許在任何給定時間顯示一個div。
function NavigateSpecs(thechosenspec) {
var SPEC = document.getElementsByTagName("div");
for(var x=0; x<SPEC.length; x++) {
name = SPEC[x].getAttribute("name");
if (name == 'SPEC-2') {
if (SPEC[x].id == thechosenspec) {
if (SPEC[x].style.display == 'block') {
SPEC[x].style.display = 'none';
}
else {
SPEC[x].style.display = 'block';
}
}else {
SPEC[x].style.display = 'none';
}
}
}
}
我需要結合這兩個功能,因此在單擊鏈接時,瀏覽器將像第一個JS函數一樣滾動到所需的錨點並顯示特定的div,同時隱藏具有類似id結構的任何其他div。
幫我試試看。 如果失敗,我將對其進行更深入的研究。
$(document).ready(function(){
$(function(e) {
$('a').bind('click',function(event){
var $anchor = $(this);
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top
}, 1500,'easeInOutExpo');
function NavigateSpecs(thechosenspec) {
var SPEC = document.getElementsByTagName("div");
for(var x=0; x<SPEC.length; x++) {
name = SPEC[x].getAttribute("name");
if (name == 'SPEC-2') {
if (SPEC[x].id == thechosenspec) {
if (SPEC[x].style.display == 'block') {
SPEC[x].style.display = 'none';
}
else {
SPEC[x].style.display = 'block';
}
}else {
SPEC[x].style.display = 'none';
}
}
}
}
event.preventDefault();
});
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.