Jira喜欢textarea的自动完成功能(Jira like autocomplete for textarea)
我想为我的一个宠物项目实现Jira,就像自动完成行为一样。 检查以下屏幕截图
我已经搜索过能够提供但却找不到任何人的任何现有插件。
我试过以下事情( JsFiddle Link ):
- 添加
textarea
和input
(最初隐藏)字段元素。- 在
textarea
上绑定一个keyPress
事件- 使用带有用户列表的
jQuery#autocomplete
插件捕获@
键并显示input
字段HTML:
<div class='span12'> <textarea id='comments' class='span12'></textarea> <input id='users' class='span12 hide' /> </div>
脚本:
$(function() { var users = [ "Ram", "Ramesh", "Rakesh", "Rahul", "Abhi", "Karan" ]; $('#comments').on('keypress', function(e){ if(e.keyCode === 64) { $( "#users" ).removeClass('hide'); $( "#users" ).autocomplete({ source: users }); } }); });
我的问题是:
- 我们如何触发
@text
显示带有所选text
自动完成列表?- 选择用户后,我们如何在
textarea
插入该用户名?I want to implement Jira like auto complete behavior for one of my pet project. Check following screenshot.
I have searched hard for any existing plugin that could able to deliver it but couldn't find anyone.
I have tried following things (JsFiddle Link):
- Add
textarea
andinput
(hidden initially) field elements.- Bind a
keyPress
event ontextarea
- Capture
@
key and showinginput
field enabled withjQuery#autocomplete
plugin with list of usersHTML:
<div class='span12'> <textarea id='comments' class='span12'></textarea> <input id='users' class='span12 hide' /> </div>
Script:
$(function() { var users = [ "Ram", "Ramesh", "Rakesh", "Rahul", "Abhi", "Karan" ]; $('#comments').on('keypress', function(e){ if(e.keyCode === 64) { $( "#users" ).removeClass('hide'); $( "#users" ).autocomplete({ source: users }); } }); });
My questions are:
- How can we trigger
@text
to show auto-complete list withtext
as selected?- After selecting the user, how we can insert that user name in the
textarea
?
原文:https://stackoverflow.com/questions/25401387
更新时间:2022-05-13 13:05
最满意答案
clearInterval(refreshID);
而已...
clearInterval(refreshID);
Thats it...
相关问答
更多-
停止setInterval(Stop setInterval)[2023-04-28]
您需要将setInterval的返回值设置为点击处理程序范围内的变量,然后使用clearInterval()如下所示: var interval = null; $(document).on('ready',function(){ interval = setInterval(updateDiv,3000); }); function updateDiv(){ $.ajax({ url: 'getContent.php', success: function ... -
停止setInterval(Stopping setInterval)[2023-12-17]
你真的想要这个吗? function initTimer(){ var n = 0; var e = document.getElementById("output"); var timerid = setInterval( function() { e.innerHTML = n; if (n < 10) // count until ten n++; else clearInterva ... -
(this)的setInterval(setInterval with (this))[2023-07-05]
在构造中使用this旨在保持这个含义的意义, setInterval被调用以在给定时间间隔执行的实际回调。 如果没有手动保存, this将成为setInterval被调用点处函数的所有者。 这是一篇关于这个主题的非常好的文章 http://www.quirksmode.org/js/this.html 另一种可以做得更清楚的方式是以下几点 var self = this this.handle = setInterval(function() { alert(self.Name); }, 5000); T ... -
因为if检查不在正在更新的代码中。 if (lvl1count == 4)仅在调用Level1被检查。 在你的间隔内移动支票,它会工作。 您还需要更改变量名称,以免它们发生冲突。 function Level1() { var timer = setInterval(function () { lvl1count++; var x = 84 + (Math.random() * (cw - 27)); var y = 84 + (Math.rando ...
-
setInterval延迟(setInterval delays)[2022-02-23]
window.onload = rotater; 是正确的语法。 你不想调用这个函数。 但是,防弹解决方案更像是: onload = function() { rotater(); window.myTimeout = setInterval(rotater, 10000); // Never pass a string to `setInterval`. }; ProTip™:不要使用new Array() ,使用数组文字。 例如,这个: var arr = new Array(); ... -
如何使用setInterval(How to use setInterval)[2022-03-22]
为简化起见,我将提供两个包含所需图像的CSS类。 将第一个类设置为默认值,然后执行以下操作: $(document).ready(function () { setInterval(function() { $('body').toggleClass('class2'); }, 15000); }); 工作演示 To simplify things, I'll have two CSS classes with images you want. Set first c ... -
clearInterval(refreshID); 而已... clearInterval(refreshID); Thats it...
-
SetInterval重新运行功能(SetInterval rerun function)[2022-08-11]
我想你想要setTimeout 。 setInterval()会一遍又一遍地调用它,你只希望每次调用One()时都调用One() 。 然后你可以将它们链接在一起: function One(){ setTimeout(function(){ //piece of code A setTimeout(function(){ //piece of code B setTimeout(function(){ ... -
您可以取消$destroy事件的间隔。 var intervalPromise = $interval(function() { // do your operation }, 500); element.on('$destroy', function() { $interval.cancel(intervalPromise); }); 以下是文档链接: https : //docs.angularjs.org/guide/directive You can cancel the interv ...
-
JavaScript使用单线程执行。 诸如setTimeout和setInterval函数使许多人相信在JavaScript中可以使用多线程。 实际上, setInterval和setTimeout只是计划在指定时间执行的函数或表达式,并将这些函数添加到同一个单线程堆栈中。 如果在计划触发setTimeout或setInterval时浏览器正在处理其他内容,则只要浏览器可以访问,就会执行计划的函数。 setInterval不保证函数只在指定的时间间隔执行。 setInterval将尝试在指定的时间执行一个函 ...