javascript - 如何通过算法为 table 中央的圆形着色?

标签 javascript jquery html algorithm math

我有一个表格,我想为中心的圆圈着色。

回合的大小应取决于数组的大小。

我已经给 i 轴和 j 轴的直径上了颜色,但我卡住了。

那么如何完成这一轮呢?

演示: http://jsfiddle.net/pJt7x/4/

当前 JavaScript:

var X = 20;
var X2 = X/2;
var X22 = X2/2;

for (i=0; i<=X; i++) {
    $('table').append('<tr>');

    for (j=0; j<=X; j++)
        ((i==X2 && j>=X22 && j<=X2+X22) ||
            (j==X2 && i>=X22 && i<=X2+X22)) ?
                        $('tr:last').append('<td class="x"></td>') : 
                            $('tr:last').append('<td></td>');

    $('table').append('</tr>'); 
}

预期结果:

20x20

最佳答案

var X = 20;
var X2 = X / 2;
var X22 = X2 / 2;

for (i = 0; i <= X; i++) {
    $('table').append('<tr>');
    for (j = 0; j <= X; j++) {
        ((i == X2 && j >= X22 && j <= X2 + X22) 
          || (j == X2 && i >= X22 && i <= X2 + X22) 
          || (Math.abs(i - X2) + Math.abs(j - X2) <= X22))

           ? $('tr:last').append('<td class="x"></td>') : $('tr:last').append('<td></td>');
          }
       }
    $('table').append('</tr>');

Example here

关于javascript - 如何通过算法为 table 中央的圆形着色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7774493/

相关文章:

javascript - 使用 Ramda `range` 进行复制,但需要每隔 3 个插入一次(React)

javascript - 对象字面量/初始化程序中的自引用

java - Ajax 调用 Spring 服务

jquery - jQuery 对话框上的动态按钮名称

javascript - jQuery UI 菜单,如何访问选项?

javascript - 当我发布到 github 中的自定义域时,React Router 不呈现路径 ='/'

javascript - 如何保护仅从前端使用的 API(Ajax 调用)

jquery - 如何在输入至少 2 个字符后显示自动完成列表

python - 读取 HTML 文件并将其显示在 Tkinter 窗口中

javascript - 有没有办法只在显示不为无时加载图像?