Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用复选框填充div_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 使用复选框填充div

Javascript 使用复选框填充div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我使用此代码确定复选框的宽度和高度: var chk = $('input[type="checkbox"]:first'); chkWidth = chk.innerWidth() + parseInt(chk.css('margin-left').replace('px', '')) + parseInt(chk.css('margin-right').replace('px', '')); /*IS there better way instead of px repla

我使用此代码确定复选框的宽度和高度:

var chk = $('input[type="checkbox"]:first');

chkWidth = chk.innerWidth() 
   + parseInt(chk.css('margin-left').replace('px', '')) 
   + parseInt(chk.css('margin-right').replace('px', '')); /*IS there better way instead of px replace?? */

chkHeight = chk.innerHeight()
   + parseInt(chk.css('margin-top').replace('px', '')) 
   + parseInt(chk.css('margin-bottom').replace('px', ''));

fieldWidth = gamefield.innerWidth();
fieldHeight = gamefield.innerHeight();
然后我尝试用与给定div完全匹配的复选框的数量填充div。事实上,我从div中得到了很多复选框


有没有办法解决这个问题?谢谢大家!

将其他事情保留下来,这会产生不同(在FF3.5上):

var cols=Math.floor(fieldWidth/chkWidth);
变量行=数学层(场高/高度);
var html='';

对于(var i=0;i将其他事物保留下来,这会产生差异(在FF3.5上):

var cols=Math.floor(fieldWidth/chkWidth);
变量行=数学层(场高/高度);
var html='';

对于(var i=0;i填充div的代码是什么?Dumb unrelated question,复选框与俄罗斯方块的关系如何?谢谢。填充div的代码是什么?Dumb unrelated question,复选框与俄罗斯方块的关系如何?谢谢。你是对的。我使用了ceil而不是floor。你的版本显示正确。但是如果我使用append而不是html。我在FF和Chrome Hmm中看到这样的图片,我注意到这是因为额外的空间(为什么要添加???)。你是对的。我使用ceil而不是floor。你的版本显示正确。但是如果我使用append而不是html。我在FF和Chrome Hmm中看到这样的图片,我注意到这是因为额外的空间(为什么要添加???)。
    var cols=Math.floor(fieldWidth/chkWidth);
var rows=Math.floor(fieldHeight/chkHeight);
var html='';
for(var i=0;i<=rows;i++) //if yo use i<rows there is space for one more row
{
    for(var j=0;j<cols;j++)
    {
        html +="<input type='checkbox'/>";
    }
}

gamefield.html(html);