[英]Javascript/jQuery append html to an UL element before page loads
[英]Modify HTML element before it loads with Jquery or JS (or is seen)
我正在嘗試為特定頁面修改圖像的src,例如: http : //oasysgp.kevinmamaqi.com/marina/ 。
問題在於徽標會在原始徽標出現后立即更改。 我正在使用以下代碼:
jQuery(document).ready(function($){
/* Cambiar el logotipo para las páginas de CPI */
if( $('body').hasClass('page-id-18') || $('body').hasClass('page-id-445')) {
$('#logo').attr("src","/wp-content/uploads/2016/07/oasispci.png");
}
});
是否可以在之前加載其他圖像?
代碼的問題在於,在替換src
之前,您將等待所有HTML加載, 包括img
標簽 。
解決此問題的最簡單方法是不直接將圖像從服務器放入src
,然后開始在前端加載:
jQuery(document).ready(function() { jQuery("img").each(function(i, el) { jQuery(el).attr("src", /*Real image here*/ "https://placeholdit.imgix.net/~text?txtsize=60&txt=SO&w=100&h=100"); }); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" /> <img src="" />
總是在加載dom之后調用jQuery(document).ready()。
最好的方法是用CSS代碼實現它。 通過在中設置背景,而不是在圖片標簽中加載
CSS看起來像這樣
a.logo
{
background: url('/wp-content/uploads/2016/07/logo-oasis.gif');
display: inline-block;
height: 56px !important;
width: 223px !important;
margin-top: 24px !important;
}
body.page-id-18 a.logo, body.page-id-445 a.logo
{
background: url('/wp-content/uploads/2016/07/oasisre.png') !important;
}
您徽標部分的HTML代碼是這樣的
<a href="http://oasysgp.kevinmamaqi.com/" class="logo">
</a>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.