diff --git a/packages/survey-angular-ui/src/questions/ranking-item.component.html b/packages/survey-angular-ui/src/questions/ranking-item.component.html index 19d2e7ccd4..e3cede0725 100644 --- a/packages/survey-angular-ui/src/questions/ranking-item.component.html +++ b/packages/survey-angular-ui/src/questions/ranking-item.component.html @@ -4,7 +4,8 @@
+ (pointerdown)="question.handlePointerDown($event, model, $any($event.currentTarget))" + (pointerup)="question.handlePointerUp($event, model, $any($event.currentTarget))">
diff --git a/packages/survey-vue3-ui/src/RankingItem.vue b/packages/survey-vue3-ui/src/RankingItem.vue index 979f247150..7c4906c025 100644 --- a/packages/survey-vue3-ui/src/RankingItem.vue +++ b/packages/survey-vue3-ui/src/RankingItem.vue @@ -18,6 +18,16 @@ ); } " + v-on:pointerup=" + (event) => { + question.handlePointerUp.call( + question, + event, + item, + event.currentTarget as HTMLElement + ); + } + " >
diff --git a/src/knockout/koquestion_ranking.ts b/src/knockout/koquestion_ranking.ts index 6e04b25f33..79e57ea9ad 100644 --- a/src/knockout/koquestion_ranking.ts +++ b/src/knockout/koquestion_ranking.ts @@ -26,6 +26,11 @@ export class QuestionRanking extends QuestionRankingModel { this.handlePointerDown(event, data, event.currentTarget); return true; }; + public koHandlePointerUp = (data: ItemValue, event: PointerEvent) => { + if(!this.survey.isDesignMode) event.preventDefault(); + this.handlePointerUp(event, data, event.currentTarget); + return true; + }; } Serializer.overrideClassCreator("ranking", function() { diff --git a/src/knockout/templates/question-ranking.html b/src/knockout/templates/question-ranking.html index c57d41c8a8..cd657627d1 100644 --- a/src/knockout/templates/question-ranking.html +++ b/src/knockout/templates/question-ranking.html @@ -42,7 +42,7 @@