javascript滑块更改调用函数序列

时间:2017-01-27 19:25:52

标签: javascript jquery

以下是一些解释

的代码
$("#upperBound").on('input',function(){
                console.log("1");
                loadAndViewImagethresholding(imageId);
                console.log("4");   
            });

function loadAndViewImagethresholding(imageId) {
        _("thresholdingdicomImage").style.opacity = "0.3";
         var elementthresh = $('#thresholdingdicomImage').get(0);

        cornerstone.enable(elementthresh);

        var imageIdpro="wadouri:"+"http://localhost:8888/dicomread/temp/"+loadfileName;

        cornerstone.loadImage(imageId).then(function(image) {
            cornerstone.loadImage(imageIdpro).then(function(imagepro) {
            upper=_("upperBound").value;
            lower=_("lowerBound").value;
            for (var i = 0;i<image.getPixelData().length;i++) {
                if(imagepro.getPixelData()[i]<lower||imagepro.getPixelData()[i]>upper)
                {  
                    imagepro.getPixelData()[i]=image.minPixelValue;
                //    console.log("imageproCopyaftercompare:"+imagepro.getPixelData()[436512]);
                }
                else{imagepro.getPixelData()[i]=image.maxPixelValue;
                    //console.log("imageproCopyaftercompare:"+imagepro.getPixelData()[436512]); 
                }
            }
            console.log("imageproCopyaftercompare:"+imagepro.getPixelData()[436512]);
            var viewportthresh = cornerstone.getDefaultViewportForImage(elementthresh, imagepro);
            console.log("2");
            cornerstone.displayImage(elementthresh, imagepro);
        });
      });  
    }

所以基本的想法是使用幻灯片upperBound将上(下)值更改为阈值图像,但在更改滑块后似乎没有任何变化。我为436512像素创建console.log,似乎在给滑块输入后imagepro(原始数据数组)已更改,但下一个displayImage未实现。

然后我创建一个console.log("1 to 4")来查看滑块事件是如何实现的,结果是1,4,2,3,而不是我期望的1,2,3,4。

所以我的问题是这个滑块是如何实现的?它会先实现1,4然后调用函数(loadAndViewImagethresholding(imageId);)吗?

如果可能,请给我一些想法来解决这个问题,任何帮助表示赞赏。 顺便说一句,基石是我使用的js。

0 个答案:

没有答案