2011-05-30 40 views
0

我有一個web應用程序必須允許用戶以交互操作字符串(單詞,短語等等...)互動字符串操作通過JavaScript

例子:

給予foobar字符串,如果用戶點擊在b字符串被分成兩部分並添加一個空格,導致foo bar

我可以把每一個字符a span元素裏面,但我擔心這會是麻煩的長字符串。

有什麼建議嗎?

+1

如果要捕捉單個字符的事件,你需要有一個單獨的元素每個字符。 – lonesomeday 2011-05-30 12:46:52

+0

Textarea:'foobar' => **在o和b **之間點擊=>'foo bar'?夠了嗎? – polarblau 2011-05-30 12:47:22

+0

您可能有興趣看[Lettering.js](http://letteringjs.com),它可以將字母(或單詞)放在''標籤中。 – Pointy 2011-05-30 12:51:03

回答

1

This版本應該幾乎做什麼你需要如果我沒有理解錯:

// Given a textarea with the content 
var text = $('textarea').text().split(''); 

$('textarea').click(function(){ 
    text.splice(this.selectionStart, 0, " "); 
    this.value = text.join(''); 
}); 

這是一個非常簡單的,而不是跨瀏覽器啓用的例子,但它應該讓你開始。

+0

謝謝,這是一個很好的起點。另外,謝謝你的例子:) – Giacomo 2011-05-30 13:16:36