Voisiko joku auttaa

pliiiiiiis....

Pitäisi tehdä funktio joka lisää yhden merkin aktiiviseen "input" kenttään siihen kohtaan missä on tekstiosoitin.

7

720

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • pliiiiis...

      Niin ja prototypes.js kirjasto on käytössä.

    • asdf

      ... vähän tarkemmin: laita ne ko. html/js-kohdat ja laita linkki mistä lyötyy prototypes.js.

      • pliiiiiiiis....

        Tässä on koodi missä merkin lisäys on kovakoodattu a-nimisen input kenttään. Mutta haluan, että se lisäisi merkin siihen kenttään, joka on aktiivinen. Porototype.js löytyy koodissa määrätystä paikasta.



        TEST




        function char(data) {
           document.form.a.value = document.form.a.value data;
        }








        X
        Y


      • asdf
        pliiiiiiiis.... kirjoitti:

        Tässä on koodi missä merkin lisäys on kovakoodattu a-nimisen input kenttään. Mutta haluan, että se lisäisi merkin siihen kenttään, joka on aktiivinen. Porototype.js löytyy koodissa määrätystä paikasta.



        TEST




        function char(data) {
           document.form.a.value = document.form.a.value data;
        }








        X
        Y

        TEST





        var active = null; // tarvitaan globaali

        function insert_at_cursor(textarea, str)
        {
        //IE support
        if (textarea == null)
        return;
        if (document.selection) {
        textarea.focus();
        sel = document.selection.createRange();
        sel.text = str;
        }
        //MOZILLA/NETSCAPE support
        else if (textarea.selectionStart || textarea.selectionStart == '0') {
        var startPos = textarea.selectionStart;
        var endPos = textarea.selectionEnd;
        textarea.value = textarea.value.substring(0, startPos) str
        textarea.value.substring(endPos, textarea.value.length);
        } else {
        textarea.value = str;
        }
        textarea.focus(); //palauttaa fokuksen poista jos huono
        }

        function set_active(obj) {
        active = obj;
        }








        X
        Y




        Lisää kursorin kohdalle mutta kursori siirtyy loppuun, enkä tiedä onnistuuko samalle paikalle palautus ... hmm
        (insert-funktio löytyi tuolta: http://alexking.org/blog/2003/06/02/inserting-at-the-cursor-using-javascript)


      • asdf
        pliiiiiiiis.... kirjoitti:

        Tässä on koodi missä merkin lisäys on kovakoodattu a-nimisen input kenttään. Mutta haluan, että se lisäisi merkin siihen kenttään, joka on aktiivinen. Porototype.js löytyy koodissa määrätystä paikasta.



        TEST




        function char(data) {
           document.form.a.value = document.form.a.value data;
        }








        X
        Y

        Näyttäisi että tuota käyttäen myös kursorin paikka pysyy: http://alexking.org/blog/2004/06/03/js-quicktags-under-lgpl/


      • asdf
        asdf kirjoitti:

        TEST





        var active = null; // tarvitaan globaali

        function insert_at_cursor(textarea, str)
        {
        //IE support
        if (textarea == null)
        return;
        if (document.selection) {
        textarea.focus();
        sel = document.selection.createRange();
        sel.text = str;
        }
        //MOZILLA/NETSCAPE support
        else if (textarea.selectionStart || textarea.selectionStart == '0') {
        var startPos = textarea.selectionStart;
        var endPos = textarea.selectionEnd;
        textarea.value = textarea.value.substring(0, startPos) str
        textarea.value.substring(endPos, textarea.value.length);
        } else {
        textarea.value = str;
        }
        textarea.focus(); //palauttaa fokuksen poista jos huono
        }

        function set_active(obj) {
        active = obj;
        }








        X
        Y




        Lisää kursorin kohdalle mutta kursori siirtyy loppuun, enkä tiedä onnistuuko samalle paikalle palautus ... hmm
        (insert-funktio löytyi tuolta: http://alexking.org/blog/2003/06/02/inserting-at-the-cursor-using-javascript)

        Kursorin position saa asetettua näin (mozilla/firefox)
        //MOZILLA/NETSCAPE support
        else if (textarea.selectionStart || textarea.selectionStart == '0') {
        var startPos = textarea.selectionStart;
        var endPos = textarea.selectionEnd;
        textarea.value = textarea.value.substring(0, startPos) str
        textarea.value.substring(endPos, textarea.value.length);
        textarea.focus(); // kursorin position asetus str:n jälkeen
        textarea.selectionStart = startPos str.length;
        textarea.selectionEnd = startPos str.length;
        }

        Joku voisi testaa miten IE käyttäytyy tolla aiemalla koodilla. Jaa... Operalla toimii ja käyttää IE-koodia, joten toiminee oikein myös IE:llä.


      • pliiiiiiis....
        asdf kirjoitti:

        Kursorin position saa asetettua näin (mozilla/firefox)
        //MOZILLA/NETSCAPE support
        else if (textarea.selectionStart || textarea.selectionStart == '0') {
        var startPos = textarea.selectionStart;
        var endPos = textarea.selectionEnd;
        textarea.value = textarea.value.substring(0, startPos) str
        textarea.value.substring(endPos, textarea.value.length);
        textarea.focus(); // kursorin position asetus str:n jälkeen
        textarea.selectionStart = startPos str.length;
        textarea.selectionEnd = startPos str.length;
        }

        Joku voisi testaa miten IE käyttäytyy tolla aiemalla koodilla. Jaa... Operalla toimii ja käyttää IE-koodia, joten toiminee oikein myös IE:llä.

        Tuo toimii loistavasti ainakin Macissa Safarilla.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Silmienvääntelijä-persut pääsivät Japanissa sarjakuvaan

      Torille! https://www.hs.fi/kulttuuri/art-2000011943173.html
      Maailman menoa
      187
      5075
    2. Nato kaatamassa Petterin haaveileman Tunnin junan?

      Nato edellyttää pohjoisessa Jäämereltä Rovaniemelle saakka kapearaitesta suoraa rautatieväylää, joka maksaa paperirahaa,
      Maailman menoa
      25
      4472
    3. Donald Trump pääsi samalle listalle Sanna Marinin kanssa

      Eli vasemmistolaisen Time-median top 100 jännäihmisten listalle. https://time.com/collections/time100-next-2021/5937699
      Maailman menoa
      9
      3137
    4. Älkää vaan sairastuko syöpään Suomessa

      Tilaston mukaan Suomi, Slovakia ja Latvia lääkitsee aivan pohjamudissa syöpää. Sairastunutta hoidetaan edelleen vanhana
      Maailman menoa
      259
      3039
    5. Kyllä, maata ei halua puolustaa nimenomaan punavihreän puolen edustajat

      "Esimerkiksi maanpuolustushenki on keskimääräistä alempana naisten, arvoliberaalien, heikossa taloustilanteessa olevien
      Maailman menoa
      144
      2934
    6. Sä veit mun sydämen ihan totaalisesti

      Aivan totaalisesti..
      Ikävä
      52
      2531
    7. Oot se sinä

      Ihan varmasti oot, tuo olemus ei valehtele 😘💓🪅 🏡 ihana 😍🙏
      Ikävä
      27
      1939
    8. Vieläkö olet

      Rakastunut minuun? Minä sinuun
      Ikävä
      56
      1873
    9. Toivotko vielä kohtaamista

      Kaivattusi kanssa?
      Ikävä
      77
      1814
    10. Ei siinä kauan

      Menisi jos olisimme kahden
      Ikävä
      22
      1787
    Aihe