1
1
Fork 0

Fix browser prefetch in notifications menu

Fix browser prefetch by substituting data-src with src for images
This commit is contained in:
Olaf Conradi 2012-12-30 00:28:48 +01:00
parent 94c8d7693f
commit dbf8f711cf
27 changed files with 44 additions and 26 deletions

View file

@ -181,7 +181,14 @@
html = notifications_tpl.format(e.attr('href'),e.attr('photo'), text, e.attr('date'), e.attr('seen')); html = notifications_tpl.format(e.attr('href'),e.attr('photo'), text, e.attr('date'), e.attr('seen'));
nnm.append(html); nnm.append(html);
}); });
$("img[data-src]", nnm).each(function(i, el){
// Replace data-src attribute with src attribute for every image
$(el).attr('src', $(el).data("src"));
$(el).removeAttr("data-src");
});
} }
notif = eNotif.attr('count'); notif = eNotif.attr('count');
if (notif>0){ if (notif>0){
$("#nav-notifications-linkmenu").addClass("on"); $("#nav-notifications-linkmenu").addClass("on");
@ -202,8 +209,7 @@
}); });
}); });
NavUpdate(); NavUpdate();
// Allow folks to stop the ajax page updates with the pause/break key // Allow folks to stop the ajax page updates with the pause/break key
$(document).keydown(function(event) { $(document).keydown(function(event) {

View file

@ -64,5 +64,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -64,5 +64,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -69,7 +69,7 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
<script> <script>
var pagetitle = null; var pagetitle = null;

View file

@ -69,7 +69,7 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
<script> <script>
var pagetitle = null; var pagetitle = null;

View file

@ -144,7 +144,7 @@
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}">{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}">{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -144,7 +144,7 @@
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}">{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}">{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -139,7 +139,7 @@ $langselector
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"> <li class="{4}">
<a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a> <a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a>
</li> </li>
</ul> </ul>

View file

@ -139,7 +139,7 @@
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"> <li class="{4}">
<a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a> <a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a>
</li> </li>
</ul> </ul>

View file

@ -66,5 +66,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -66,5 +66,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -64,5 +64,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -64,5 +64,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -187,6 +187,12 @@
html = notifications_tpl.format(e.attr('href'),e.attr('photo'), text, e.attr('date'), e.attr('seen')); html = notifications_tpl.format(e.attr('href'),e.attr('photo'), text, e.attr('date'), e.attr('seen'));
nnm.append(html); nnm.append(html);
}); });
$("img[data-src]", nnm).each(function(i, el){
// Replace data-src attribute with src attribute for every image
$(el).attr('src', $(el).data("src"));
$(el).removeAttr("data-src");
});
} }
notif = eNotif.attr('count'); notif = eNotif.attr('count');
if (notif>0){ if (notif>0){

View file

@ -142,5 +142,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -142,5 +142,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -179,6 +179,12 @@
html = notifications_tpl.format(e.attr('href'),e.attr('photo'), text, e.attr('date'), e.attr('seen')); html = notifications_tpl.format(e.attr('href'),e.attr('photo'), text, e.attr('date'), e.attr('seen'));
nnm.append(html); nnm.append(html);
}); });
$("img[data-src]", nnm).each(function(i, el){
// Replace data-src attribute with src attribute for every image
$(el).attr('src', $(el).data("src"));
$(el).removeAttr("data-src");
});
} }
notif = eNotif.attr('count'); notif = eNotif.attr('count');
if (notif>0){ if (notif>0){

View file

@ -146,5 +146,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -146,5 +146,5 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -89,7 +89,7 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li><a href="{0}"><img src="{1}">{2} <span class="notif-when">{3}</span></a></li> <li><a href="{0}"><img data-src="{1}">{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
<div style="position: fixed; top: 3px; left: 5px; z-index:9999">$langselector</div> <div style="position: fixed; top: 3px; left: 5px; z-index:9999">$langselector</div>

View file

@ -89,7 +89,7 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li><a href="{0}"><img src="{1}">{2} <span class="notif-when">{3}</span></a></li> <li><a href="{0}"><img data-src="{1}">{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
<div style="position: fixed; top: 3px; left: 5px; z-index:9999">{{$langselector}}</div> <div style="position: fixed; top: 3px; left: 5px; z-index:9999">{{$langselector}}</div>

View file

@ -62,7 +62,7 @@
</div> </div>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
<div style="position: fixed; top: 3px; left: 5px; z-index:9999">$langselector</div> <div style="position: fixed; top: 3px; left: 5px; z-index:9999">$langselector</div>

View file

@ -62,7 +62,7 @@
</div> </div>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
<div style="position: fixed; top: 3px; left: 5px; z-index:9999">{{$langselector}}</div> <div style="position: fixed; top: 3px; left: 5px; z-index:9999">{{$langselector}}</div>

View file

@ -60,7 +60,7 @@
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -60,7 +60,7 @@
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li> <li class="{4}"><a href="{0}"><img data-src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>

View file

@ -104,7 +104,7 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li><a href="{0}"><img src="{1}">{2} <span class="notif-when">{3}</span></a></li> <li><a href="{0}"><img data-src="{1}">{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
{# {#

View file

@ -104,7 +104,7 @@
</nav> </nav>
<ul id="nav-notifications-template" style="display:none;" rel="template"> <ul id="nav-notifications-template" style="display:none;" rel="template">
<li><a href="{0}"><img src="{1}">{2} <span class="notif-when">{3}</span></a></li> <li><a href="{0}"><img data-src="{1}">{2} <span class="notif-when">{3}</span></a></li>
</ul> </ul>
{{* {{*