我有一個web應用程序必須允許用戶以交互操作字符串(單詞,短語等等...)互動字符串操作通過JavaScript
例子:
給予foobar
字符串,如果用戶點擊在b
字符串被分成兩部分並添加一個空格,導致foo bar
。
我可以把每一個字符a span
元素裏面,但我擔心這會是麻煩的長字符串。
有什麼建議嗎?
我有一個web應用程序必須允許用戶以交互操作字符串(單詞,短語等等...)互動字符串操作通過JavaScript
例子:
給予foobar
字符串,如果用戶點擊在b
字符串被分成兩部分並添加一個空格,導致foo bar
。
我可以把每一個字符a span
元素裏面,但我擔心這會是麻煩的長字符串。
有什麼建議嗎?
This版本應該幾乎做什麼你需要如果我沒有理解錯:
// Given a textarea with the content
var text = $('textarea').text().split('');
$('textarea').click(function(){
text.splice(this.selectionStart, 0, " ");
this.value = text.join('');
});
這是一個非常簡單的,而不是跨瀏覽器啓用的例子,但它應該讓你開始。
謝謝,這是一個很好的起點。另外,謝謝你的例子:) – Giacomo 2011-05-30 13:16:36
是的,這將是確定的,但設置你的事件處理程序不能在單獨的跨度,但對整個容器,然後在這裏看到:使用jQuery(非必要)http://en.wikipedia.org/wiki/Flyweight_pattern
如果要捕捉單個字符的事件,你需要有一個單獨的元素每個字符。 – lonesomeday 2011-05-30 12:46:52
Textarea:'foobar' => **在o和b **之間點擊=>'foo bar'?夠了嗎? – polarblau 2011-05-30 12:47:22
您可能有興趣看[Lettering.js](http://letteringjs.com),它可以將字母(或單詞)放在''標籤中。 – Pointy 2011-05-30 12:51:03