我正在嘗試在頁面加載時在主 div 內添加一個 div,當我撰寫這樣的代碼時它會起作用:
function DivAdder() {
$('#mainDiv').append('<div ></div>');
}
DivAdder();
window.onload = DivAdder;
但是我想讓這個函式有一個引數,所以我可以只傳遞它的名字而不是在 .append 函式中寫入整個字串。我寫了這樣的東西,但我有標題錯誤:
function DivAdder(variable) {
$('#mainDiv').append($(variable));
}
DivAdder('<div ></div>');
window.onload = DivAdder;
我也試過這個:
$('#mainDiv').append(variable);
但什么也沒有發生。我閱讀了一些檔案,但沒有成功。感謝幫助 <3 。
uj5u.com熱心網友回復:
這是因為window.onload將 Event 物件作為第一個引數傳遞。如果你console.log(variable),它會告訴你這是一個事件。
您需要將第一個引數保留為可選事件,并將您的 HTML 作為第二個引數傳遞:
function DivAdder($event, html) {
console.log("Event = ", $event)
console.log("Adding div : " , html)
$('#mainDiv').append(html);
}
DivAdder(null, '<div >TEST</div>');
window.onload = DivAdder; // This will call DivAdder( LoadEvent )
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="mainDiv"></div>
我不確定你為什么首先分配window.onload = DivAdder,因為這不會添加任何 HTML 并且根本不會做任何事情。你可以完全擺脫它,它只會帶來麻煩。
function DivAdder(html) {
console.log("Adding div : " , html)
$('#mainDiv').append(html);
}
DivAdder('<div >TEST</div>');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="mainDiv"></div>
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/395223.html
標籤:javascript html 查询 dom
上一篇:如何在函式中更新陣列
