I have pictures on the site I want to do (If the image has been downloaded, delete p) But I was surprised that ‘load’ has been removed from the new jQuery version
<div>
<img src="Imgur.jpg" alt="Tutor" width="304" height="236">
<p>1</p>
</div>
<div>
<img src="Imgur.jpg" alt="Tutor" width="304" height="236">
<p>1</p>
</div>
<div>
<img src="Imgur.jpg" alt="Tutor" width="304" height="236">
<p>1</p>
</div>
<div>
<img src="Imgur.jpg" alt="Tutor" width="304" height="236">
<p>1</p>
</div>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$("img").on("load", function () {
$(this).parent().find("p").remove()
})
</script>
Advertisement
Answer
Your code works. I used JQuery Version 3.6.0
$("img").on("load", function() {
$(this).parent().find("p").remove()
})<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <div> <img src="https://via.placeholder.com/150" alt="Tutor" > <p>1</p> </div> <div> <img src="https://via.placeholder.com/150" alt="Tutor" > <p>1</p> </div> <div> <img src="https://via.placeholder.com/150" alt="Tutor"> <p>1</p> </div> <div> <img src="https://via.placeholder.com/150" alt="Tutor"> <p>1</p> </div>
If you want just a special p to remove give the image an id
<img id="picture1" src="https://via.placeholder.com/150" alt="Tutor">
$("#picture1").on("load", function() {
$(this).parent().find("p").remove()
})
That’s it.
So include like this:
script.js
$(document).ready(function() {
console.log("ready!"); //You see this in Console if it works!
$("img").on("load", function() {
$(this).parent().find("p").remove()
})
});
Then your html file:
<html>
<head>
....
</head>
<body>
<div>
<img src="https://via.placeholder.com/150" alt="Tutor" >
<p>1</p>
</div>
<div>
<img src="https://via.placeholder.com/150" alt="Tutor" >
<p>1</p>
</div>
<div>
<img src="https://via.placeholder.com/150" alt="Tutor">
<p>1</p>
</div>
<div>
<img src="https://via.placeholder.com/150" alt="Tutor">
<p>1</p>
</div>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="yourfolder/script.js"></script>
</body>
</html>