2017-07-18 74 views
0

我有這樣的代碼來創建動態按鈕:設置一個動態創建按鈕的位置

@Rory McCrossan的回答here

function createRefreshButton() { 
    return $('<button/>', { 
     text: 'Refresh Data', 
     id: 'btn_refresh', 
     click: ClickRefresh 
    }) 
} 
$('body').append(createRefreshButton()) 

function ClickRefresh() { 
    alert('refresh'); 
} 

如何設置一些CSS屬性,如:{position : absolute, top: 50, left : 50}當創建按鈕?

我一直在使用.css()這樣的嘗試:

function createRefreshButton() { 
    return $('<button/>', { 
     text: 'Refresh Data', 
     id: 'btn_refresh', 
     click: ClickRefresh 
    }).css({position:absolute,top:50,left:50}); 
} 
$('body').append(createRefreshButton()) 

function ClickRefresh() { 
    alert('refresh'); 
} 

沒有成功!

+1

通過使用'的.css()' ? – j08691

+0

謝謝!檢查我的編輯,我已經嘗試過(但肯定以一種不好的方式)! – evergoo

回答

3

您可以另一個屬性添加到用於配置其他屬性的對象 - 命名css

function createRefreshButton() { 
 
    return $('<button/>', { 
 
     text: 'Refresh Data', 
 
     id: 'btn_refresh', 
 
     css:{position:"absolute",top:"50px",left:"50px"}, // <-- right here 
 
     click: ClickRefresh 
 
    }) 
 
} 
 
$('body').append(createRefreshButton()) 
 

 
function ClickRefresh() { 
 
    alert('refresh'); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+0

謝謝這是完美的 – evergoo

2

function createRefreshButton(_top,_left,index) { 
 
    return $('<button/>', { 
 
     text: 'Refresh Data'+index, 
 
     id: 'btn_refresh'+index, 
 
     click: ClickRefresh, 
 
     css:{position:"absolute",top:(_top+"px"),left:(_left+"px")}, 
 
    }) 
 
} 
 
for(var i=0;i<250;i=i+25){ 
 
$('body').append(createRefreshButton(i,i,i)) 
 
} 
 
function ClickRefresh() { 
 
    alert('refresh'); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+0

謝謝!但我有很多按鈕被創建,並且位置是在地圖上創建的! – evergoo

+0

我編輯了代碼。我希望它會有用。祝你好運 –

+0

感謝您的編輯!肯定它是有用的! – evergoo