我有以下问题:
1。)我想使用可竞争的div或textarea(最好是一个可信的div,因为我也可以使用html标签,而不仅仅是文本),作为书写板。但是,一旦光标到达div / textarea的BOTTOM RIGHT角,我希望写入停止。这似乎很难实现。我已经管理了max-height和overflow:hidden来使元素(div / textarea)不扩展,但是用户仍然可以键入,它只是不可见的,不需要的东西。我想要的是当光标到达右下角然后继续在一个新的空“页面”上停止写入。
我的第一个想法是使用一些等宽字体并计算允许的最大字符,但问题是第1并非所有浏览器显示相同数量的相同字体的等宽字符,每行和第二个div的大小可以变化,不是不变的。
理想的是div,这样我就可以输入html标签(粗体,斜体等),显示内容的div可以有不同的大小,具体取决于屏幕分辨率。
2。)给定一个表示“页面”的div,它从数据库中填充文本/ html,如何只显示填充div的内容,以及用户何时按下“下一页”按钮,显示下一个内容。这对我来说似乎是无法解决的,通过javascript搞清楚可以在div中填充多少内容。
非常感谢关于这两个相关问题的任何想法
没有flash,没有java,没有插件。只:html,css,javascript
提前致谢。
答案 0 :(得分:0)
您可以尝试以下代码。
<div id="editable_div"></div>
var content_id = document.getElementById("editable_div");
max = 10;
//binding keyup/down events on the contenteditable div
$('#'+content_id).keyup(function(e){ check_charcount(content_id, max, e); });
$('#'+content_id).keydown(function(e){ check_charcount(content_id, max, e); });
function check_charcount(content_id, max, e)
{
if(e.which != 8 && $('#'+content_id).text().length > max)
{
// $('#'+content_id).text($('#'+content_id).text().substring(0, max));
e.preventDefault();
}
}