用程序触发剑道图表.系列点击事件
Programmatically Trigger Kendo Chart.seriesClick Event
这是一个非常小而简单的问题。我在网上找不到任何东西,但我希望能够对我们的剑道图进行单元测试,特别是系列点击活动是否如预期那样有效。问题是我似乎找不到触发事件的方法。我试图通过jQuery和call.click((来定位图表系列。尝试这种方法没有给我任何帮助,所以在绝望的时刻,我尝试点击所有
$('*').each(function(){
$(this).click();
});
没有这样的运气。这是图表选项片段
$scope.chartOptions = {
//...
// On Click add the criteria to the serach bar.
seriesClick: function (series) {
console.log("seriesClick");
//Do stuff here
$scope.$apply();
}
}
};
当我在单元测试中尝试运行上面提到的jQuery代码时,我没有得到控制台输出。给你。
xit('should update the searchbar when a series item has been clicked', inject(function ($compile, $rootScope, $timeout) {
var scope = $rootScope.$new();
//Write out the directive
//We have a directive that will replace this tag with the kendo-chart directive
var ele = $compile('<chart></chart>')(scope);
angular.element(document.body).append(ele);
scope.$digest();
$timeout.flush(0);
scope = ele.isolateScope();
console.log('clicking everything');
$('*').each(function () {
$(this).click();
});
我已经向telerik论坛提交了同样的问题,希望从"专家"那里得到一些建议,但我没有像SO那样快得到回复。
编辑我确实在Telerik论坛上看到了这篇帖子,我希望我需要做的不是"目前没有现成的支持"。
在telerik论坛上询问后,我终于得出了这个答案
element.mousedown().mouseup() //Trigger events for Chrome, Firefox and IE9
.trigger(jQuery.Event("MSPointerDown", { originalEvent: {} })).trigger(jQuery.Event("MSPointerUp", { originalEvent: {} })) //Trigger event for IE10
.trigger(jQuery.Event("pointerdown", { originalEvent: {} })).trigger(jQuery.Event("pointerup", { originalEvent: {} })); //Trigger event for IE11
显然,它监听mousedown((mouseup((事件。然后在看到它不适用于IE10和11之后,我需要使用另一种触发mousedown((/mouseup((的方法
相关文章:
- 分派点击事件并保留击键修饰符
- 模糊事件的Javascript测试
- keyup事件处理程序更改焦点不适用于快速键入
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 如何使Javascript动态html表及其上的事件
- 使用类从一个标记中双击事件
- 如何在未直接触发的情况下停止事件
- 如何在elfinder插件(一个文件管理器插件)上获得上传前事件
- 对iPad上的点击事件反应缓慢
- 事件和状态
- Highcharts条形图如何添加系列事件
- 如何在高图表中查找鼠标出事件的系列名称
- JQuery-事件委托系列中的最后一个事件处理程序触发器
- 单击系列之外的事件
- 在系列隐藏/显示事件中隐藏/显示y轴
- D3:当鼠标悬停事件时,多系列折线图的每条线上都有工具提示
- 在具有多个系列的高图上单击事件
- 用程序触发剑道图表.系列点击事件
- 鼠标悬停在事件上,光标指针位于行系列上
- 柱状图:单击事件仅触发钻取系列