在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ IE8下div編輯框輸入中文,substring截取問(wèn)題

IE8下div編輯框輸入中文,substring截取問(wèn)題

一個(gè)div可編輯框,我需要在輸入的字符大于10的時(shí)候,讓輸入框的內(nèi)容保存為前十個(gè)字符。一下代碼在谷歌瀏覽器內(nèi)沒(méi)有問(wèn)題,但是到了IE8中我輸入“11111111111”可以正常截取,但是輸入“啊啊啊啊啊啊啊啊啊啊啊”顯示的結(jié)果會(huì)變成一個(gè)“啊”。
在線等待,解決方法,還有,我并不是很確定問(wèn)題出現(xiàn)在哪了。

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>

    </head>

    <body>
        <div id="myDiv" contenteditable="true" style="width: 100%; height: 80px; border: 1px solid #CCC;" onblur="myDivCalc()" onkeyup="myDivCalc()"></div>
        <script>
            function myDivCalc(){
                var str = $("#myDiv").text();
                if(str.length<=10){
                    
                }else{
                    var strJ = str.substring(0,10);
                    $("#myDiv").text(strJ);
                    set_focus(document.getElementById('myDiv'))
                }
            }
            //處理div光標(biāo)在最后
            function set_focus(el){
                //el=el[0];  //jquery 對(duì)象轉(zhuǎn)dom對(duì)象
                el.focus();
                if($.support.msie)
                {
                    var range = document.selection.createRange();
                    this.last = range;
                    range.moveToElementText(el);
                    range.select();
                    document.selection.empty(); //取消選中
                }
                else
                {
                    var range = document.createRange();
                    range.selectNodeContents(el);
                    range.collapse(false);
                    var sel = window.getSelection();
                    sel.removeAllRanges();
                    sel.addRange(range);
                }
            }
        </script>
    </body>

</html>
回答
編輯回答
離觴

在傳遞正值參數(shù)情況下,slice() 和 substring () 行為是一致的,substr()方法在第二個(gè)參數(shù)上會(huì)容易混淆

在傳遞負(fù)值參數(shù)情況下,slice() 方法是通過(guò)字符串長(zhǎng)度相加,符合一般思維,substring()第二個(gè)參數(shù)轉(zhuǎn)換為0會(huì)容易出問(wèn)題,起始位置會(huì)容易變更,substr() 方法負(fù)值情況下會(huì)出現(xiàn)IE兼容性問(wèn)題。

2017年7月15日 05:41
編輯回答
吢涼

本人更換了IE8下系統(tǒng)的輸入法,由原有的微軟輸入法,更換成搜狗輸入法。就沒(méi)問(wèn)題了。

2018年2月16日 16:05
編輯回答
愛(ài)是癌

沒(méi)玩過(guò)ie瀏覽器,不過(guò)你可以試一下這個(gè)方法

2018年4月5日 17:19