创建一个按钮来启动jQuery函数,而不是立即启动
Creating a button to launch a jQuery function rather than instantly?
我有一个创建图像的函数:
<script>
domtoimage.toJpeg(document.getElementById('print_screen'), { quality: 0.70 })
.then(function (dataUrl) {
var link = document.createElement('a');
link.download = 'invoice.jpeg';
link.href = dataUrl;
link.click();
});
</script>
问题是它在加载页面时立即启动。我想做一个这样的按钮:
<a class="btn" href="" onclick="printFunction()">Click here to print</a>
我试着在function printFunction
里面包装domtoimage
,但那不起作用。我做错了什么?(
如果您正在使用jQuery,那么您可以在文档中包装您的函数。当浏览器解析该标签时,将执行domtoimage.toJpeg
函数。
<script>
$(document).ready(function(){
var btnHandler = function(){
domtoimage.toJpeg(document.getElementById('print_screen'), { quality: 0.70 })
.then(function (dataUrl) {
var link = document.createElement('a');
link.download = 'invoice.jpeg';
link.href = dataUrl;
link.click();
};
var $btn = $("a.btn").click(btnHandler);
});
</script>
$('#buttonid')。点击(function (){这里的代码});
在promise回调中触发click事件。解决方法是在承诺回调中注释link.click()
,并在另一个function
中触发click event
这样做注释link.click()
<script>
var link=null;
domtoimage.toJpeg(document.getElementById('print_screen'), { quality: 0.70 })
.then(function (dataUrl) {
link = document.createElement('a');
link.download = 'invoice.jpeg';
link.href = dataUrl;
// Comment the below line
// link.click();
});
</script>
在自定义函数中触发点击事件,如下所示:
<a class="btn" href="" onclick="printFunction()">Click here to print</a>
<script>
function printFunction(){
// trigger the click event in printFunction
link.click();
}
</script>
在函数中这样写:
var srciptElement = document.createElement('script');
scriptElement.attr("src",the url of the jquery");
document.getElementsByTagName("BODY")[0].appendChild(scriptElement);
相关文章:
- 为什么我的控制器没有启动函数.js脚本
- JavaScript未启动函数
- 如何在单击链接时启动函数,然后从该链接传递类
- ajax,用两个事件启动函数
- 调用 $ajax() 时如何启动函数
- JQUERY可排序插件,当可拖动元素悬停在指定的元素上时启动函数
- 我的代码在没有警报()的情况下无法正常工作;启动函数
- 上一个完成后的jQuery启动函数
- 如何使用书签在新选项卡中启动函数
- Jquery ajax,等待图像或iframe完全加载后再启动函数
- ExtJs 5-在Ext.application中未执行启动函数
- JQuery,再次启动函数?动画队列
- Javascript启动函数两次,4个函数中的1个不起作用
- 函数在单击表行时被激发,需要停止复选框才能启动函数
- 如何为此选框 jquery 添加停止和启动函数
- 重新启动函数会产生意想不到的结果
- 鼠标悬停时启动函数,鼠标移动时停止函数
- 用鼠标滚轮启动函数并单击jQuery
- 无法在“document.write();”中启动函数
- jQuery -停止后启动函数一次