()
| 8201 | } |
| 8202 | |
| 8203 | function hiddenTextarea() { |
| 8204 | var te = elt("textarea", null, null, "position: absolute; bottom: -1em; padding: 0; width: 1px; height: 1em; outline: none"); |
| 8205 | var div = elt("div", [te], null, "overflow: hidden; position: relative; width: 3px; height: 0px;"); |
| 8206 | // The textarea is kept positioned near the cursor to prevent the |
| 8207 | // fact that it'll be scrolled into view on input from scrolling |
| 8208 | // our fake cursor out of view. On webkit, when wrap=off, paste is |
| 8209 | // very slow. So make the area wide instead. |
| 8210 | if (webkit) { te.style.width = "1000px"; } |
| 8211 | else { te.setAttribute("wrap", "off"); } |
| 8212 | // If border: 0; -- iOS fails to open keyboard (issue #1287) |
| 8213 | if (ios) { te.style.border = "1px solid black"; } |
| 8214 | disableBrowserMagic(te); |
| 8215 | return div |
| 8216 | } |
| 8217 | |
| 8218 | // The publicly visible API. Note that methodOp(f) means |
| 8219 | // 'wrap f in an operation, performed on its `this` parameter'. |
no test coverage detected