单击显示 Div,在 Div 中显示 Div1 3 秒,然后隐藏

On click display Div, within that Div display Div1 for 3 sec then hide

我正在尝试显示(单击时)Div1 3 秒,然后隐藏并显示 Div2。

顺序是...

单击时 >> div "slidingDiv" 出现 >> Div1 出现 3 秒 >> Div1 隐藏(再次单击时不出现)>> Div2 出现。

3 秒后我无法隐藏

下面是我的代码...

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">

$(document).ready(function(){

$(".slidingDiv").hide();
$(".show_hide").show();

$('.show_hide').click(function(){
$(".slidingDiv").slideToggle();
});

});

</script>

</head>

<body>

<a href="#" class="show_hide" onclick="begin()">Show/hide</a>
<div class="slidingDiv">

<div id="Div2" style="display:none">
php code here</div>

<div id="Div1" style="display:none"><img id="myImage" src="ajax-loader.gif"></div><br>
<script type = "text/javascript">
function begin() {
function show1() {
document.getElementById("Div1").style.display="block";
setTimeout("hide1()", 3000);  // 3 seconds
}

function hide1() {
document.getElementById("Div1").style.display="none";
show2();
}

show1();
function show2() {
document.getElementById("Div2").style.display="block";
}
}
</script>

</div>

这是错误的部分:

setTimeout("hide1()", 3000);  // 3 seconds

必须是:

setTimeout(hide1, 3000);  // 3 seconds

这里是fiddle:https://jsfiddle.net/gerardofurtado/yso7ajyb/