Cette fois, je vais vous apporter les précautions concernant l'utilisation des événements glisser pour modifier la taille des objets dans JS. Jetons un coup d'œil à ce qui suit.
Fonction Faites glisser pour changer la taille de l'objet : faites glisser le petit p jaune pour modifier la largeur et la hauteur du grand p vert
La mise en œuvre principale se compose de trois étapes :
1. Obtenez la taille de deux p
via l'identifiant. 2. Ajoutez l'événement onmousedown au petit p
3. Ajoutez le onmousedown event to document ajoute onmousemove et onmouseup événements
À partir du diagramme d'analyse, nous pouvons voir qu'il suffit d'obtenir la valeur de largeur croissante de l'objet lors du déplacement, et le problème est résolu
1 2 3 | <p id= "panel" >
<p id= "dragIcon" ></p>
</p>
|
Copier après la connexion
Ajoutez quelques styles
1 2 3 4 5 6 7 8 9 10 11 12 | <style>
#panel{
position: absolute;
width: 200px;height: 200px;
background: green;
}
#dragIcon{
position: absolute;bottom: 0;right: 0;
width: 20px;height: 20px;
background: yellow;
}
</style>
|
Copier après la connexion
js :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | <script>
window.onload = function () {
var oPanel = document.getElementById( 'panel' );
var oDragIcon = document.getElementById( 'dragIcon' );
var disX = 0;
var disY = 0;
var disW = 0;
var disH = 0;
oDragIcon.onmousedown = function (ev) {
var ev = ev || window.event;
disX = ev.clientX;
disY = ev.clientY;
disW = oPanel.offsetWidth;
disH = oPanel.offsetHeight;
document.onmousemove = function (ev) {
var ev = ev || window.event;
var W = ev.clientX - disX + disW;
var H = ev.clientY - disY + disH;
if (W<100){
W = 100;
}
if (W>800){
W =800;
}
if (H<100){
H = 100;
}
if (H>500){
H = 500;
}
oPanel.style.width =W + 'px' ;
oPanel.style.height = H + 'px' ;
}
document.onmouseup = function () {
document.onmousemove = null;
document.onmouseup = null;
}
}
}
</script>
|
Copier après la connexion
Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de PHP !
Lecture recommandée :
Explication détaillée des étapes pour obtenir un effet de défilement transparent avec vue.js
Implémentation du serveur React rendu Explication détaillée des étapes
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!