Похоже, у вас их слишком много ((в случае, если
Если видео устано c и не вставлено динамически, вы можете изменить
$(document).on("timeupdate", "#video3", function() {
на
$("#video3").on("timeupdate", function() {
В любом случае попробуйте этот переключатель
$(function() {
$(document).on("timeupdate", "#video3", function() {
var videoElem = this;
console.log(videoElem.duration);
$('#btn3d').toggle(parseInt(videoElem.duration - videoElem.currentTime) <= 30);
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form method="post" action="<?php echo base_url();?>Students/introduction" style="float: left;">
<video id="video3" width="640" height="360" controls>
<source src="/elearning/assets/videos/video3.mp4" type="video/mp4">
</video> <br>
<input style="display: none;" type="submit" id="btn3d" value="Proceed" class="btn btn-primary btn3d">
</form>