function disableDownloadReportLink(link) {
link.onclick = function(event) {
event.preventDefault();
}
}
function enableDownloadReportLink(link) {
link.onclick = undefined;
}
var el = document.getElementById("wop");
disableDownloadReportLink(el);
setTimeout(
function() {
enableDownloadReportLink(el);
},
4000
);
<a id="wop" href="http://www.google.com">I will work after 4 seconds!</a>
Im Grunde, was Sie mit disableDownloadReportLink
getan haben, ist zu deaktivieren, was das onclick
Ereignis tut. Was Sie tun können, wenn Sie die Verbindung wollen, ist wieder normal arbeiten zu setzen onclick
-undefined
:
function enableDownloadReportLink(link) {
link.onclick = undefined;
}
Sie den Anruf zu enableDownloadReportLink
in eine setTimeout
, um es zu tun nach 4 Sekunden setzen können:
setTimeout(
function() {
enableDownloadReportLink(link);
},
4000
);
Für Ihre Frage, wie diese Funktionen zu nennen, ist es das, was ich tun würde, wie ich Ihnen in meinem Kommentar gesagt (nicht diese Schnipsel erwarten, zu arbeiten, ist nur ein Beispiel):
function doEverything(link) {
// submit integration report
document.getElementById('viewIntegrationReport').submit();
// disable link
disableDownloadReportLink(link);
// enable link after 4 seconds
setTimeout(
function() {
enableDownloadReportLink(link);
},
4000
);
}
<a href="#x" id="downloadReportLink" title="This function will provide you a 30 day download of all your eSign transactions." onclick="doEverything(this);"><span>Export E-Sign Information</span></a>
könnte es einfacher sein, das Element zu verstecken/zeigen, dass hat Das 'href' Attribut – Patrick
Wie wird disableDownloadReportLink aufgerufen? –
Einfach einen Timer setzen, hier ein Beispiel http://stackoverflow.com/questions/21721159/how-to-set-timer-on-body-onload – Guenther