【问题标题】:jcrop - round selection resultsjcrop - 轮次选择结果
【发布时间】:2019-02-24 20:19:25
【问题描述】:

我正在尝试使用 jcrop,但是对于 jquery 来说是新手,我对如何在 jquery 函数中使用“round”函数感到有些困惑。

当我通过 PHP 变量提交结果并且它们在 jquery 的屏幕显示中使用时,我更愿意将它们与在 jquery 中获取的一样进行四舍五入,从而确保 jquery 和 php 的一致性。我不希望一个四舍五入,而另一个舍弃。看起来round的默认行为是四舍五入到最接近的整数,这很好。

我的脚本当前(带有一些 php)

<?php
$boxwidth=500;
$boxheight=500;
?>
<script>
$(function() {
    $('#cropbox').Jcrop({ boxWidth: <?php echo $boxwidth;?>, boxHeight: <?php echo $boxheight;?> });
});


$(document).ready(function()
{
// Update co-ordinates
    function updateCoordinates(cropbox)
    {
        $("#crop_x").val(cropbox.x);
        $("#crop_y").val(cropbox.y);
        $("#width").val(cropbox.w);
        $("#height").val(cropbox.h);
    }



    // Attach jCrop
    $("#cropbox").Jcrop({
    <?php echo (isset($_POST['aspect_ratio']) ? 'aspectRatio: ' . ((float)$_POST['width'] / (float)$_POST['height']) . ',' : ''); ?>
        onChange: updateCoordinates,
        onSelect: updateCoordinates
    });
});
-->
</script>

我不熟悉这种类型的代码,不知道如何对结果进行四舍五入。我没有显示实际的图像文件,而是它的浏览器调整大小的版本,并且经常得到像 100.3394567892 x 100.544222 像素这样的结果,这将产生 100x101 的图像。我知道它不会是“像素准确的”,当我想要 100x100 时,我可能不得不满足于 99x99,但显示的尺寸将与最终结果相符,并且我会消除显示小数点后 10 位的图像尺寸。

【问题讨论】:

    标签: php jquery jcrop


    【解决方案1】:

    在尝试了一些 OP 中的 figurinfrom 代码后,我应用了以下更改 来自

        $("#crop_x").val(cropbox.x);
        $("#crop_y").val(cropbox.y);
        $("#width").val(cropbox.w);
        $("#height").val(cropbox.h);
    

        $("#crop_x").val(Math.round(cropbox.x));
        $("#crop_y").val(Math.round(cropbox.y));
        $("#width").val(Math.round(cropbox.w));
        $("#height").val(Math.round(cropbox.h));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-22
      • 1970-01-01
      • 2023-03-16
      • 2011-02-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-12
      • 2022-08-05
      相关资源
      最近更新 更多