2017-01-09 46 views
0

我想在我的代碼中調用以下代碼。將參數傳遞給Javascript中的函數

scrollIntoViewElement(main-nav); 

以下是功能:

​​

該函數應滾動頁面到提供的元素的id的圖。

這是正確的嗎?還是應...

// Element to scroll into view 
scrollIntoViewElement(element) { 
    document.getElementById("\'" + element + "\'").scrollIntoView(); 
} 
+0

除非你有一個id爲「element」的元素,否則不會。如果「main-nav」是你的元素的id,那麼你會好起來的 –

+0

'document.getElementById(element).scrollIntoView();' –

+0

也'scrollIntoViewElement('main-nav'); – allnodcoms

回答

2

代碼scrollIntoViewElement(main-nav);的意思是「取main值,減去nav的值,然後調用scrollIntoViewElement傳遞結果作爲參數。如果你想在傳遞串main-nav,你需要引號來告訴你使用一個字符串的JavaScript分析器:scrollIntoViewElement("main-nav");

在函數,你使用引號,因爲你要使用的參數的值,而不是文字字符串"element"

所以:

scrollIntoViewElement("main-nav"); 

// Element to scroll into view 
scrollIntoViewElement(element) { 
    document.getElementById(element).scrollIntoView(); 
} 

這裏假設你的文檔中有id="main-nav"的元素。如果不這樣,它會拋出異常,因爲getElementById將返回null