gpt4 book ai didi

javascript - 按下 shift 键和向左键或箭头键时突出显示字母

转载 作者:行者123 更新时间:2023-11-30 21:19:57 25 4
gpt4 key购买 nike

我有一个 html 元素,它在按下左右箭头时定位。默认行为是,当按下 shift 键并按下向右箭头键或向左键时,它只会突出显示下一个字母而不会突出显示前一个字母,它不会突出显示所有字母以复制单词,我如何突出显示所有字母同时按下 shift 和向右或向左箭头。谢谢。

这是我当前的代码:

angular.module('myApp', [])
.controller("Ctrl_List", ["$scope", function(scope) {
scope.keyPress = function(){
var code = event.which;
if (code == 37) {
document.activeElement.selectionEnd--;
var test = false;
if(test == false){
// document.activeElement.selectionStart--;
document.activeElement.selectionEnd--;
if(document.activeElement.selectionStart == 0){
test = true;
document.activeElement.selectionEnd = 0;
document.activeElement.selectionStart = 0;
}
}
if (code == 39) {
event.preventDefault();
document.activeElement.selectionStart++;
//document.activeElement.selectionEnd++;

}
}
}]);


<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp">
<div class="container" ng-controller="Ctrl_List">
<div class="row">
<textarea name="text" unselectable="on" id="text" cols="30" rows="10" ng-keydown="keyPress();"></textarea>
</div>
</div>

我的解决方案:我想我快关门了。

 if (event.shiftKey) {
//eval("scope." + callFun + "();");
console.log('shiftKey Pressed');

if (code == 37) {
console.log('arrow Pressed');
}

if (code == 39) {
console.log('arrow Pressed');
document.activeElement.selectionStart == 0;
document.activeElement.selectionStart++;
document.activeElement.selectionEnd++;
}


}

最佳答案

问题:

how can I highlight all the letters when shift and right or left arrow are pressed at the same time.

回答:

  if (code == 37 && event.shiftKey) {
event.preventDefault();
document.activeElement.selectionStart = 0;
document.activeElement.selectionEnd = document.activeElement.textLength;
}

这将在按下 shift 和左箭头键时选择所有字母。工作示例:

https://codepen.io/anon/pen/eEmpQM?editors=1011

关于javascript - 按下 shift 键和向左键或箭头键时突出显示字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45297271/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com