2

私はlessphpbootstrap-colorpickerをいじっていましたが、bootstrap-colorpickerによって設定された16進数の色でless変数をオーバーライドできるかどうかを調べたいと思います.

<?php
if(isset($_POST['submit'])){
    require "lessc.inc.php";

    $less = new lessc;
    $less->setVariables(array("bodyBackground" => $_POST['color']));
    $less->checkedCompile("less/bootstrap.less", "output.css");

    try{
        $less->compile("invalid LESS } {");
    }catch(exception $e){
        echo "fatal error: " . $e->getMessage();
    }
}?>

マークアップ:

<form method="post" action="">
    <input name="color" 
           type="text" 
           class="span3" 
           value="<?php if(isset($_POST['color'])){echo $_POST['color'];}else{echo       
                 '#8fff00';}?>" 
           id="cp1" />
    <input name="submit" class="btn btn-primary" type="submit" value="Submit"/>
</form>
<script>
$function(){
    var bodyStyle = $('body')[0].style;

    $('#cp1').colorpicker({format: 'hex'}).on('changeColor', function(ev){    
        bodyStyle.backgroundColor = ev.color.toHex();
});
</script>

私はこれがうまくいくと思っていましたが、そうではありません。現在、ブートストラップのless変数@bodyBackground: #new_hex;のデフォルト値を取得しているため、setVariablesがPOSTデータを渡しているかどうかは完全にはわかりません。@white私はlessphpが初めてで、コンパイルする前にブートストラップの少ない変数に新しい値を割り当てることができるかどうか疑問に思っていましたか?

前もって感謝します

4

1 に答える 1