我正在创建一个模式窗口,我需要在登录后立即显示该窗口,但在浏览器控制台中出现错误,如下所示:
Uncaught TypeError: $(...) is not a function
at HTMLDocument.<anonymous> ((index):25)
at l (jquery.min.js:2)
at c (jquery.min.js:2)
我已经准备了以下代码片段,其中包含我当前必须显示我的模式窗口的代码:
<!doctype html>
<html lang="es">
<head>
<title></title>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="activos/css/bootstrap.min.css" crossorigin="anonymous">
<link rel="stylesheet" href="activos/css/estilos.css" type="text/css">
<link rel="icon" type="image/png" href="activos/img/icon.png" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<script>
(function($){
$('#basicModal')({ show: false});
$('#basicModal').modal('toggle');
});
</script>
</head>
<body>
<div class="cuerpo">
<div class="modal fade" id="basicModal" tabindex="-1" role="dialog" aria-labelledby="basicModal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">Basic Modal</h4>
</div>
<div class="modal-body">
<h3>Modal Body</h3>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
<div id="content-area">
</div>
</div>
</body>
</html>
我不知道是 JQuery 还是 Bootstrap 版本问题在浏览器控制台中显示此错误并且也没有打开模式窗口。
更新1:
我用通常的方式
(function($){
$('#basicModal')({ show: false});
$('#basicModal').show();
});
现在它不再在浏览器控制台中向我显示错误,但它仍然没有向我显示模态窗口,还有其他建议吗?
更新 2:
他们在评论中给我的另一个建议是使用$('#basicModal').modal('toggle');
它,因为有时它不起作用show();
,我以以下方式使用它但我仍然没有得到结果,还有其他建议吗?
(function($){
$('#basicModal')({ show: false});
$('#basicModal').modal('toggle');
});
我已经为我使用的版本更改了 jQuery 的版本,为我使用的版本更改了 Bootstrap 的版本,此外还添加
$(document).ready(function ()
了它以便在打开 DOM 时加载。我会做的是,如果是为了他们登录时,保存一个cookie,只在他们登录后显示,如果它已经存在,不要显示它,如果它不存在,是的,但这取决于你在找什么。
我不知道您是否在更改 jQuery 或 Bootstrap 时遇到问题,但我建议这样做。