我在这个问题上挣扎了一整天,所以也许有人可以提供帮助。
我想在按钮点击时将settings.php页面(包括常用html的javascript / jquery代码)加载到index.php中。
以下是代码段:
的index.php
<head>
<script type="text/javascript">
function loadSettingsPage (){
$('#myResults').load('settings.php', function (){ });
}
</script>
</head>
的settings.php
<div class="tabsWrapper">
<ul class="tabs">
<li data="sections" onclick="setTab('sections')">Product categories</li>
<li data="suppliers" onclick="setTab('suppliers')">Suppliers</li>
</ul>
</div>
...
<script type="text/javascript">
function setTab(currentTab = "sections"){
//some code goes here
};
$(document).ready(function (){
//document ready code goes here with click events
}
</script>
问题是,如何将Settings.php文件加载/包含到index.php文件中,以便所有javascript代码包含$(document).ready函数中的点击事件也在safari浏览器中执行。现在它可以与所有浏览器完美配合,但可以使用Safari
答案 0 :(得分:6)
您正在尝试使用默认参数的EcmaScript 6功能。根据{{3}},这在Safari,Opera或Internet Explorer中尚未实现。
使用显式检查参数是否已设置:
function setTab(currentTab) {
currentTab = currentTab || "sections";
// some code goes here
}
您需要非常小心使用新的ES6功能,其中许多功能尚未在Safari中实现,并且它们永远不会在旧的IE版本中实现。