Skip to main content

load img only when popup appear



First, I'm pretty beginner of jQuery or AJAX.





I've got around 50+ links on a web page and each link has a div#popup which contain a table and a img. It means around 50 pictures are loading when the page loads and it slower the site quite a bit.





So I would like to know if there a way to to load the picture only when mouseover the link?\





Here is the code and script I'm using.







<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="utf-8" />

<title>jQuery Popup Div on hover Test</title>

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>

<script type="text/javascript">

$(function() {

var moveLeft = 20;

var moveDown = 10;



$('a#trigger').hover(function(e) {

$('div#pop-up').show();

}, function() {

$('div#pop-up').hide();

});



$('a#trigger').mousemove(function(e) {

$("div#pop-up").css('top', e.pageY + moveDown).css('left', e.pageX + moveLeft);

});

});

</script>

<style type="text/css">

.wpm_pag.mng_lts_chp.grp .det a.ttl{

color: #0000ff;

font-size:16px;

line-height:12px;

height:14px;

display:block;

padding:0 0 2px 0

}



.wpm_pag.mng_lts_chp.grp .det div#pop-up table tr td img{

border: 1px solid #e74f25;

}



.wpm_pag.mng_lts_chp.grp .det div#pop-up table{

margin:0;

background-color:#656565;

}



.wpm_pag.mng_lts_chp.grp .det div#pop-up table tr.firstR{

background-color:black;

height: 30px;

font-size: 120%;

}



.wpm_pag.mng_lts_chp.grp .det div#pop-up table tr td.otherRow{

height: 20px;

}



.wpm_pag.mng_lts_chp.grp .det div#pop-up table tr td.otherRow b{

color: #3C3C3C;

}



/* Popup CSS */

.wpm_pag.mng_lts_chp.grp .det div#pop-up {

display: none;

position: absolute;

padding: 0px 5px 5px 5px;

background-color: #000;

color: #FFF;

border: 1px solid #1a1a1a;

font-size: 110%;

font-family:"Comic Sans MS", cursive, sans-serif;

}



</style>





</head>

<body>

<div class="wpm_pag mng_lts_chp grp">

<div class="det">

<p><a href="#" class="ttl" id="trigger">this link</a></p>

<!-- HIDDEN / POP-UP DIV -->

<div id="pop-up">

<table width="650px" cellspacing="0" cellpadding="2px">

<tr class="firstR">

<td colspan="3">Nenee! Ane Tokitoki Kanojo</td>

<td style="text-align: right;" width="25%">Rating</td>

</tr>

<tr>

<td width="200px" rowspan="4"><img height="200" width="200" src ="http://gooddealstore.us/icon/test.jpg" alt="xxx" /></td> /** php echo url

<td class="otherRow" colspan="3"></td>

</tr>

<tr>

<td class="otherRow"><b>Release:</b></td> /** php

<td class="otherRow"><b>Author:</b></td> echo

<td class="otherRow"><b>Artist:</b></td> **/

</tr>

<tr>

<td class="otherRow" colspan="3"><b>Genres:</b></td>

</tr>

<tr>

<td style="vertical-align: top;" colspan="3"></td>

</tr>

</table>

</div>



</div>

</body>

</html>




Comments

Popular posts from this blog

Why is this Javascript much *slower* than its jQuery equivalent?

I have a HTML list of about 500 items and a "filter" box above it. I started by using jQuery to filter the list when I typed a letter (timing code added later): $('#filter').keyup( function() { var jqStart = (new Date).getTime(); var search = $(this).val().toLowerCase(); var $list = $('ul.ablist > li'); $list.each( function() { if ( $(this).text().toLowerCase().indexOf(search) === -1 ) $(this).hide(); else $(this).show(); } ); console.log('Time: ' + ((new Date).getTime() - jqStart)); } ); However, there was a couple of seconds delay after typing each letter (particularly the first letter). So I thought it may be slightly quicker if I used plain Javascript (I read recently that jQuery's each function is particularly slow). Here's my JS equivalent: document.getElementById('filter').addEventListener( 'keyup', function () { var jsStart = (new Date).getTime()...

Is it possible to have IF statement in an Echo statement in PHP

Thanks in advance. I did look at the other questions/answers that were similar and didn't find exactly what I was looking for. I'm trying to do this, am I on the right path? echo " <div id='tabs-".$match."'> <textarea id='".$match."' name='".$match."'>". if ($COLUMN_NAME === $match) { echo $FIELD_WITH_COLUMN_NAME; } else { } ."</textarea> <script type='text/javascript'> CKEDITOR.replace( '".$match."' ); </script> </div>"; I am getting the following error message in the browser: Parse error: syntax error, unexpected T_IF Please let me know if this is the right way to go about nesting an IF statement inside an echo. Thank you.