Jui Slider删除了重要事件

时间:2013-09-19 17:30:05

标签: javascript jquery yii yii-components

我有一个问题,不确定它有多复杂,但我找不到解决方案,但我花了相当多的时间进行故障排除和谷歌搜索解决方案。

这是我的问题,我的页面上有一个jQuery UI Slider。

我使用Ajax插入一个新值,它基本上重建了Slider。

一切都很完美。问题是我删除了任何键绑定。 (我知道解决方案)。

问题出现在我通过在窗口小部件的根目录中更改鼠标事件之前删除鼠标事件。

在Slider重建之后,我不能回想起这个,我不明白为什么,但它只是在第一页加载时不起作用。

这是我禁用Slider点击跟踪器的代码。

// Disable the mouse tracking for ui-slider-handle(s)
$.widget('ui.slider', $.ui.slider, {
    _mouseCapture: function(e) {
        return (!$(e.target).is(this.element)) ? this._super(e) : false;
    }    
}); 

滑块本身没有特定的东西,因为这会改变滑块小部件本身。

为了清楚起见我只是想将一些绑定鼠标事件移除到Jui Slider。

上面的代码可以解决这个问题,但是一旦我通过Ajax使用新值重建滑块,它就无法工作。

$('#slider').unbind();

上面的unbind()函数删除了所有绑定并使滑块无法正常工作,只是可视化。

1 个答案:

答案 0 :(得分:0)

我通过在我的框架中添加2行来解决它,作为Yii的框架特定代码。

Yii::app()->clientScript->scriptMap['*.js'] = false;
Yii::app()->clientScript->scriptMap['*.css'] = false;

它不允许脚本在页面上重新初始化。