


In many cases we will monitor changes in the value of the input box in real time in order to take immediate actions to guide the viewer to enhance the user experience of the website. For example, it can instantly display the number of bytes that have been entered into the input box, or instantly read the entered value for search guidance, which is Google's related search effect, etc.
A lot can be done if we can capture instant events.
What you need to know
First of all, we need to understand the difference between onchange and onpropertychange:
Under IE, when the attribute of an HTML element changes, it can be captured instantly through onpropertychange .
onchange must cause the current element to lose focus (onblur) before the event can be activated when the attribute value changes.
After understanding this, we found that the effect of onpropertychange is what we want, but unfortunately, it only works under IE. Can we find another time to replace onpropertychange?
After reading the information, I learned that the oninput event can be used to achieve the same effect in other browsers. This is great. We only need to distinguish the IE browser.
Usage of oninput
Let’s first understand how to use oninput.
If you write the registration time directly on the page, then the following writing method can be achieved:
However, when oninput is written in JS code and separated, it is somewhat different from the ordinary event registration method. You must use addEventListener to register.
The difference between attachEvent and addEventListener
Having said that, let’s take a look at how to use attachEvent and addEventListener:
The attachEvent method attaches other processing events to a certain event. (Mozilla series is not supported)
addEventListener method is used in Mozilla series
Example:
document.getElementById("btn").onclick = method1;
document.getElementById("btn").onclick = method2;
document.getElementById("btn").onclick = method3;
If written like this, then only medhot3 will be executed
Written like this:
var btn1Obj = document.getElementById("btn1");
btn1Obj.attachEvent("onclick",method1);
btn1Obj.attachEvent("onclick",method2);
btn1Obj.attachEvent("onclick",method3) ;
The execution order is method3->method2->method1
If it is a Mozilla series, this method is not supported and you need to use addEventListener
var btn1Obj = document.getElementById("btn1");
btn1Obj.addEventListener("click",method1,false);
btn1Obj.addEventListener("click",method2,false);
btn1Obj.addEventListener("click",method3,false);
The execution order is method1->method2->method3
After understanding how to use addEventListener to register oninput events, we can return to the problem to be solved [dividing browsers].
Judge IE browser
How to distinguish IE?
This seems to be a common question. There are many ways to find it on the Internet, which are classified into two categories:
One is to determine the functional attributes of the browser.
The second is to judge the traditional user-agent string, which may be the oldest and most popular detection method.
I won’t go into details here. We use a relatively simple method to judge
if("v"=="v") {
alert("IE");
}else{
alert("NO");
}
The problems we have encountered so far have been solved, and we started writing code to test whether our ideas can be realized.
Complete the code:
Example written directly on the page:
< ;input type="text" name="textfield" oninput="document.getElementById('webtest').innerHTML=this.value;" onpropertychange="document.getElementById('webtest').innerHTML=this.value;" />
Example written in JS:
So beautiful , complete it once, preview the above code, and implement it in two ways on the page: first, direct reference in the page; second, reference in JS.
Tested and compatible with: IE6, IE7, IE8, Firefox, Opera, Chrome, Safari

Detailed explanation of JavaScript string replacement method and FAQ This article will explore two ways to replace string characters in JavaScript: internal JavaScript code and internal HTML for web pages. Replace string inside JavaScript code The most direct way is to use the replace() method: str = str.replace("find","replace"); This method replaces only the first match. To replace all matches, use a regular expression and add the global flag g: str = str.replace(/fi

Simple JavaScript functions are used to check if a date is valid. function isValidDate(s) { var bits = s.split('/'); var d = new Date(bits[2] '/' bits[1] '/' bits[0]); return !!(d && (d.getMonth() 1) == bits[1] && d.getDate() == Number(bits[0])); } //test var

This article discusses how to use jQuery to obtain and set the inner margin and margin values of DOM elements, especially the specific locations of the outer margin and inner margins of the element. While it is possible to set the inner and outer margins of an element using CSS, getting accurate values can be tricky. // set up $("div.header").css("margin","10px"); $("div.header").css("padding","10px"); You might think this code is

This article explores ten exceptional jQuery tabs and accordions. The key difference between tabs and accordions lies in how their content panels are displayed and hidden. Let's delve into these ten examples. Related articles: 10 jQuery Tab Plugins

Discover ten exceptional jQuery plugins to elevate your website's dynamism and visual appeal! This curated collection offers diverse functionalities, from image animation to interactive galleries. Let's explore these powerful tools: Related Posts: 1

http-console is a Node module that gives you a command-line interface for executing HTTP commands. It’s great for debugging and seeing exactly what is going on with your HTTP requests, regardless of whether they’re made against a web server, web serv

This tutorial shows you how to integrate a custom Google Search API into your blog or website, offering a more refined search experience than standard WordPress theme search functions. It's surprisingly easy! You'll be able to restrict searches to y

The following jQuery code snippet can be used to add scrollbars when the div content exceeds the container element area. (No demonstration, please copy it directly to Firebug) //D = document //W = window //$ = jQuery var contentArea = $(this), wintop = contentArea.scrollTop(), docheight = $(D).height(), winheight = $(W).height(), divheight = $('#c


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

SublimeText3 Mac version
God-level code editing software (SublimeText3)

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Dreamweaver CS6
Visual web development tools

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software
