0
var slider = document.getElementById('test5');
noUiSlider.create(slider, {
    start: [1366],
    step: 1,
    range: {
        'min': 200,
        'max': 1920
    },
    format: wNumb({
        decimals: 0,
        postfix: 'px',
    })
});

var app = angular.module('myApp', []);

app.controller('myWidth', function ($scope) {
    $scope.width = inputFormat.value;

    $scope.$watch('width', function (newValue, oldValue) {
        console.log('Old:' + oldValue);
        console.log('New:' + newValue);
    });
    console.log($scope.width + ' - scope width');
});
var inputFormat = document.getElementById('input-format');
editorContainer = document.getElementById('editorContainer');
slider.noUiSlider.on('update', function (values, handle) {
    inputFormat.value = values[handle];
    //$(editorContainer).css('width', values[handle]);
});
inputFormat.addEventListener('change', function(){
    slider.noUiSlider.set(this.value);
});

我在不断获取 inputFormat 的值时遇到问题。发生的情况是我运行我的网页/应用程序并且 $scope.width 变量获取 inputFormat 的第一个值然后停止。inputFormat 的值发生变化后,它不会继续获取该值。所以我的问题是如何以更新 $scope.width 变量的方式调用 inputFormat 变量?我是 Angular 和 javascript 的新手,希望你们都能理解我的问题。谢谢您的帮助!

这是我调用 $scope.width 的 html 部分:

<div class="" <!--id="editorContainer"--> style="position: absolute; top: 10px;    bottom: 10px; right: 10px; left: 10px; width: {{width}};"
4

1 回答 1

0

您应该使用ng-style然后只需更改 $scope.width..

于 2015-10-30T23:20:37.893 回答