Здравствуйте. Скажите, как сделать кнопки переключения заготовок?
Цель такая, чтобы при нажатии на одну из кнопок формировалась заготовка:
картинка + текст + цвет текста + размер шрифта + стиль шрифта
Если нужно можно еще сюда зайти (там с css)
https://codepen.io/nikeyb/pen/zyrbgy
Вот код.
<html>
<body>
<div class="quote">
<div class="image">
<img src="https://mirpozitiva.ru/uploads/posts/2017-04/medium/1492620921_06.jpg" alt="" >
</div>
<div class="overlay"></div>
<div class="content">
<div class="text">
<p>Love all, trust a few, do wrong to none.</p>
<small>⚊ William Shakespeare</small>
</div>
</div>
</div>
<div class="generator">
<div class="generator-inner">
<h3>Generator</h3>
<div class="form-group">
<label for="quote">Quote</label>
<textarea type="text" class="form-control" name="quote" required>Love all, trust a few, do wrong to none.</textarea>
</div>
<div class="form-group">
<label for="author">Author</label>
<input type="text" class="form-control" name="author" value="William Shakespeare" required>
</div>
<div class="form-group">
<label for="image">Image</label>
<input type="file" class="form-control" name="image" accept="image/x-png,image/gif,image/jpeg">
</div>
<div class="form-group">
<a href="javascript:getCapture();" class="btn btn-block btn-secondary">DOWNLOAD</a>
<a href="javascript:" id="download" style="display: none"></a>
</div>
</div>
</div>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery-compat/3.0.0-alpha1/jquery.min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.2/css/bootstrap.min.css'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.4/popper.min.js'></script>
<script src='https://html2canvas.hertzen.com/dist/html2canvas.min.js'></script>
</body>
</html>
function getCapture(){
html2canvas(document.querySelector(".quote")).then(canvas => {
var quote = document.querySelector(".quote");
document.body.appendChild(canvas);
var download = document.getElementById("download");
var image = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");
download.setAttribute("href", image);
download.setAttribute("download","quote.png");
download.click();
});
}
$(function(){
$('.generator [name="author"]').keyup(function(){
var author = $(this).val();
$('.quote .text small').html('⚊ ' + author);
});
$('.generator [name="quote"]').keyup(function(){
var quote = $(this).val();
$('.quote .text p').html(quote);
});
$('.generator [name="image"]').on('change', function(){
var input = this;
var url = $(this).val();
var ext = url.substring(url.lastIndexOf('.') + 1).toLowerCase();
if (input.files && input.files[0]&& (ext == "gif" || ext == "png" || ext == "jpeg" || ext == "jpg"))
{
var reader = new FileReader();
reader.onload = function (e) {
$('.quote img').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}else{
$('.quote img').attr('src', '');
}
});
});