##// END OF EJS Templates
Refactored image preview code
neko259 -
r1081:6ec3505c default
parent child Browse files
Show More
@@ -38,11 +38,15 b' function addImgPreview() {'
38 38 var thumb_id = 'full' + el.find('img').attr('alt');
39 39
40 40 if(!$('#'+thumb_id).length) {
41 var img_w = el.find('img').attr('data-width');
42 var img_h = el.find('img').attr('data-height');
41 var imgElement= el.find('img');
42
43 var img_w = imgElement.attr('data-width');
44 var img_h = imgElement.attr('data-height');
43 45
44 var win_w = $(window).width();
45 var win_h = $(window).height();
46 var win = $(window);
47
48 var win_w = win.width();
49 var win_h = win.height();
46 50 //new image size
47 51 if (img_w > win_w) {
48 52 img_h = img_h * (win_w/img_w) - margin;
@@ -54,8 +58,8 b' function addImgPreview() {'
54 58 }
55 59
56 60 var img_pv = new Image();
57 $(img_pv)
58 .addClass('img-full')
61 var newImage = $(img_pv);
62 newImage.addClass('img-full')
59 63 .attr('id', thumb_id)
60 64 .attr('src', $(el).attr('href'))
61 65 .appendTo($(el))
@@ -69,16 +73,15 b' function addImgPreview() {'
69 73 .mousewheel(function(event, delta) {
70 74 var cx = event.originalEvent.clientX,
71 75 cy = event.originalEvent.clientY,
72 i_w = parseFloat($(img_pv).width()),
73 i_h = parseFloat($(img_pv).height()),
76 i_w = parseFloat(newImage.width()),
77 i_h = parseFloat(newImage.height()),
74 78 newIW = i_w * (delta > 0 ? 1.25 : 0.8),
75 79 newIH = i_h * (delta > 0 ? 1.25 : 0.8);
76 80
77 $(img_pv).width(newIW);
78 $(img_pv).height(newIH);
81 newImage.width(newIW);
82 newImage.height(newIH);
79 83 //set position
80 $(img_pv)
81 .css({
84 newImage.css({
82 85 left: parseInt(cx - (newIW/i_w) * (cx - parseInt($(img_pv).position().left, 10)), 10),
83 86 top: parseInt(cy - (newIH/i_h) * (cy - parseInt($(img_pv).position().top, 10)), 10)
84 87 });
@@ -89,11 +92,10 b' function addImgPreview() {'
89 92 addClasses: false,
90 93 stack: '.img-full'
91 94 })
92 }
93 else {
95 } else {
94 96 $('#'+thumb_id).remove();
95 97 }
96 98 //prevent default
97 99 return false;
98 100 });
99 } No newline at end of file
101 }
General Comments 0
You need to be logged in to leave comments. Login now