сохранение изображения jquery

304
24 ноября 2016, 09:53

здравствуйте, есть новостной блок .item , внутри него есть .news-img-area и внутри .news-img-area есть .def-newsimg с изображением внутри.

как можно при нажатии опр. кнопки которая находится в каждом новостном блоке, скачать изображение находящееся по адресу выше?

p.s. у каждого блока уникальное изображение

Answer 1

На сколько я Вас правильно понял - попытался воспроизвести.

var parent = document.querySelector(".news"); 
parent.addEventListener("click", showImg); 
 
function showImg(e) { 
  if (e.target.className === "news-button") { 
    var img = e.target.previousSibling.previousSibling.childNodes[1].childNodes[1]; 
    document.location.href = img.src; 
    /* 
    // можно сделать открытие во всплывающем окне под размер картинки 
                   var image = new Image(); 
                   image.src = img.src; 
                   window.open(img.src, "Image", "width=" + image.width + ",height=" + image.height); 
                   */ 
  } 
}
.news { 
  width: 400px; 
} 
.item { 
  margin: 0 0 20px 0; 
  border-bottom: 1px dashed #ddd; 
  padding-bottom: 20px; 
} 
.def-newsimg { 
  width: 100px; 
} 
.def-newsimg > img { 
  max-width: 100%; 
} 
.news-text-area {} .news-button { 
  background-color: #ccc; 
  color: #000; 
  padding: 5px 10px; 
  display: inline-block; 
  cursor: pointer; 
  margin: 10px 0; 
}
<html> 
 
<head> 
</head> 
 
<body> 
  <div class="news"> 
    <div class="item"> 
      <div class="news-img-area"> 
        <div class="def-newsimg"> 
          <img src="http://icon-icons.com/icons2/108/PNG/256/males_male_avatar_man_people_faces_18373.png"> 
        </div> 
      </div> 
      <div class="news-button">Скачать картинку</div> 
      <div class="news-text-area">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure 
        dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</div> 
    </div> 
    <div class="item"> 
      <div class="news-img-area"> 
        <div class="def-newsimg"> 
          <img src="http://icon-icons.com/icons2/108/PNG/256/males_male_avatar_man_people_faces_18367.png"> 
        </div> 
      </div> 
      <div class="news-button">Скачать картинку</div> 
      <div class="news-text-area">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure 
        dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</div> 
    </div> 
    <div class="item"> 
      <div class="news-img-area"> 
        <div class="def-newsimg"> 
          <img src="http://icon-icons.com/icons2/108/PNG/256/females_female_avatar_woman_people_faces_18409.png"> 
        </div> 
      </div> 
      <div class="news-button">Скачать картинку</div> 
      <div class="news-text-area">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure 
        dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</div> 
    </div> 
  </div> 
</body> 
 
</html>

READ ALSO
Вывести подписи на фотографиях

Вывести подписи на фотографиях

Подскажите пожалуйста как можно вывести подписи на фото справа внизу вне зависимости от ширины, высоты и выравнивания изображения?.

329
JQ селекторы через data

JQ селекторы через data

Я хочу сделать выборку.

379
Динамическое добавление элементов в listview (jQuerymobile)

Динамическое добавление элементов в listview (jQuerymobile)

Как можно вытащить из объекта данные и динамически добавлять их в listview.

343
Почему не отображается карта гугл сайте

Почему не отображается карта гугл сайте

Почему не отображается карта гугл сайте http://anastasiya. biz.

310