2017-02-20 15 views
1

Я использую этот скрипт для создания эскиза изображения для моего readmore hack, все работает нормально, но проблема в том, что нет скрипта для добавления изображения по умолчанию для сообщений без изображений и появляются изображения с разрешением defualt, но я хочу изменить его на max ie s1600.Хотите добавить в этот скрипт возможности для изменения изображения и разрешения изображения

function stripTags(s, n) { 
    return s.replace(/<.*?>/ig, "").split(/\s+/).slice(0, n - 1).join(" ") 
} 
function rm(a) { 
    var p = document.getElementById(a); 
    imgtag = ""; 
    ifrtag = ""; 
    ifrsrc = ""; 
    ifrtb = -1; 
    var video; 
    var videoUrl; 
    var videoId; 
    var service = ""; 
    var checkCase = ""; 
var thumbnailUrl; 
    img = p.getElementsByTagName("img"); 
    console.log(a); 

    /* */ 
    // The following will log the number of post in this particular post 
    var isImageSlider = 0; 
    var postImageSlider = "" 
     + "<div class='post-image-slider'>" 
     + "<ul class='rslides'>"; 

    console.log("Number of images in the post: " + img.length); 

    // the `img` variable is an array of images in the post, so we run a for loop to get all the images in that array 
    for (var i = 0; i < img.length; i++) { 
     var imgSrc = img[i].src; 
     console.log("Image #" + i + " : " + imgSrc); 
    } 

    if (img.length > 1) { 
     isImageSlider = 1; 
     for (var i = 0; i < img.length; i++) { 
      var imgSrc = img[i].src; 
      postImageSlider += "<li><img src='"+ imgSrc +"' alt=''></li>"; 
     } 
     postImageSlider += "</ul></div>"; 
    } 



    // This simply checks in there's more than one image 
    if (img.length > 1) { 
     console.log("This post contains more than one image"); 
    } 
    else if (img.length < 1) { 
     console.log("This post contains no images at all"); 
    } 
    else { 
     console.log("This post contains only one image"); 
    } 

    /* deepak's code ends here */ 


    ifr = p.getElementsByTagName("iframe"); 
    for (var i = 0; i < ifr.length; i++) { 
     videoUrl = ifr[i].src; 
     if (videoUrl.indexOf("//www.youtube.com/embed/") != -1) { 
      ifrtb = i; 
      service = "youtube"; 
     break 
} 
else if (videoUrl.indexOf("//player.vimeo.com/video/") != -1) { 
      ifrtb = i; 
      service = "vimeo"; 
      break 
     } 
else if (videoUrl.indexOf("//www.dailymotion.com/embed/video/") != -1) { 
      ifrtb = i; 
      service = "dailymotion"; 
      break 
     } 
    } 
videoId = check_id(videoUrl, service); 
    if (service == "vimeo") { 
    thumbnailUrl = "http://i.vimeocdn.com/video/" + videoId + "_.jpg"; 
    } 
else if (service == "youtube") { 
    thumbnailUrl = "http://img.youtube.com/vi/"+ videoId +"/maxresdefault.jpg"; 
    } 
    else if (service == "dailymotion") { 
    thumbnailUrl = "http://www.dailymotion.com/thumbnail/video/" + videoId; 
    } 


    if (!isImageSlider) { 
     if (ifrtb != -1) ifrtag = '<div class="block-image"><div class="thumb"><a href="' + y + '"><img src="'+ thumbnailUrl +'"/></a></div></div>'; 

     else if (img.length >= 1) imgtag = '<div class="block-image"><div class="thumb"><a href="' + y + '"><img src="'+ img[0].src +'"/></a></div></div>'; 

     else imgtag = ''; 
     p.innerHTML = ifrtag + imgtag + ''; 
    } 

    else { 
     ifrtag = '<div class="block-image"><div class="thumb slider-images-container">'+ postImageSlider +'</div></div>'; 
     p.innerHTML = ifrtag + ''; 
    } 


} 

function check_id(url, service) { 
    var regExp; 
    if (service == "vimeo") { 
    regExp = /^.*(?:vimeo.com)\/(?:channels\/|channels\/\w+\/|groups\/[^\/]*\/videos\/|albu\/\d+\/video\/|video\/|)(\d+)(?:$|\/|\?)/; 

    var idArr = url.match(regExp); 
    if (idArr[1] && parseInt(idArr[1])) { 
     return idArr[1]; 
    } 
    else { 
     return 0; 
    } 
    } 

else if (service == "youtube") { 
var ID = ''; 
    url = url.replace(/(>|<)/gi,'').split(/(vi\/|v=|\/v\/|youtu\.be\/|\/embed\/)/); 
    if(url[2] !== undefined) { 
    ID = url[2].split(/[^0-9a-z_\-]/i); 
    ID = ID[0]; 
    } 
    else { 
    ID = url; 
    } 
    return ID; 
} 
    else if (service == "dailymotion") { 
    var m = url.match(/^.+dailymotion.com\/(video|hub|embed)\/([^_]+)[^#]*(#video=([^_&]+))?/); 
    if (m !== null) { 
     if(m[4] !== undefined) { 
      return m[4]; 
     } 
     return m[2]; 
    } 

    } 
} 

ответ

0

Чтобы добавить возможность иметь изображение по умолчанию, замените следующий код

else imgtag = ''; 

с

else imgtag = '<div class="block-image"><div class="thumb"><a href="' + y + '"><img src="'+ defaultImageURL +'"/></a></div></div>'; 

и добавить переменную defaultImageURL со ссылкой на изображение по умолчанию.

Чтобы изменить размер изображения в более высоком разрешении, замените следующий код -

imgSrc = img[i].src 

&

img[0].src 

со следующим кодом соответственно -

imgSrc = img[i].src.replace(/s\B\d{2,4}/,'s1600') 

и

img[0].src.replace(/s\B\d{2,4}/,'s1600')