-1
我編寫下面的代碼,兩者之間的差異是選擇器,所以如何在少代碼中重用相似的方法?如何使用工廠功能?如何在不同的選擇器中重用jQuery代碼?
$(".tc_banzhu").click(function() {
$(".banzhuDon").fadeIn(200);
//get the width and height of the dialog
var tc_hgt = $(".banzhuDon .popup_box").height()/2;
var tc_wid = $(".banzhuDon .popup_box").width()/2;
$(".banzhuDon.popup_box").css({
marginLeft: tc_wid * -1 + "px",
marginTop: tc_hgt * -1 + "px"
});
});
$(".tc_ban").click(function() {
$(".banDon").fadeIn(200);
var tc_hgt = $(".banDon .popup_box").height()/2;
var tc_wid = $(".banDon .popup_box").width()/2;
$(".banDon.popup_box").css({
marginLeft: tc_wid * -1 + "px",
marginTop: tc_hgt * -1 + "px"
});
});
$(".tc_banner").click(function() {
$(".bannerDon").fadeIn(200);
var tc_hgt = $(".bannerDon .popup_box").height()/2;
var tc_wid = $(".bannerDon .popup_box").width()/2;
$(".bannerDon.popup_box").css({
marginLeft: tc_wid * -1 + "px",
marginTop: tc_hgt * -1 + "px"
});
});
請讓我知道,如果我的回答是行不通的。 http://stackoverflow.com/a/36036587/4763793 –
我把代碼放在https://jsbin.com/pebuma/edit?html,css,js,console,output 其實我沒有設置對話框的高度值,marginTop:tc_hgt * -1 +「px」不起作用,無論如何,非常感謝。 –