此代码的一部分工作,另一部分不工作。我无法弄清楚自己的问题......为什么只有我的代码的一部分功能?
这是我external.js
var framevar = document.getElementById("userframe");
var frametogg = false;
var framesel = false;
$(document).ready(function(){
$('#filestext').click(function(){
if(framevar.src != "test.txt"){
framevar.src = "test.txt";
}
if((frametogg === false) && (framesel === false)){
$('#userframe').show(350);
frametogg = true;
$('#frameselection').show(350);
framesel = true;
}else if(frametogg === false){
$('#userframe').show(350);
frametogg = true;
}else if(framesel === false){
$('#frameselection').show(350);
framesel = true;
}else{
$('#userframe').hide(350);
frametogg = false;
$('#frameselection').hide(350);
framesel = false;
}
});
$('#uploadtext').click(function(){
if(framevar.src != "uploadpage.php"){
framevar.src = "uploadpage.php";
}
if(frametogg === false){
$('#userframe').show(350);
frametogg = true;
}else if((frametogg === true) && (framesel === false)){
$('#userframe').hide(350);
frametogg = false;
}
if(framesel === true){
$('#frameselection').hide(350);
framesel = false;
}
});
$('#entryloggertitle').click(function(){
$('#entrylogger').toggle(350);
});
});
这是我home.php
<div id="filesdiv">
<iframe id="userframe" src="uploadpage.php"></iframe>
<select id="frameselection" multiple>
<script>selectionTable();</script>
</select></div>
<span id="entryloggertitle">log.</span><br/>
<span id="filestext">files</span><br/>
<span id="uploadtext">upload</span><br/>
<div id="entrylogger">
<form action="add.php" method="POST">
p? <input type="checkbox" name="public[]" value="yes" checked/>
<input type="text" name="entry" size="12"/>
<input type="submit" value="push!" style="display:none;" />
</form>
</div>
在CSS文件中,entrylogger,frameselection and userframe has display:none。我只放了代码的相关部分。
切换功能entrylogger工作得很好。但我不明白为什么用户帧和帧选择的切换不起作用。
需要什么功能?用户框是否应该在初始页面加载时隐藏,然后在他们单击文件文本时显示? – MrMadsen
@MrMadsen在执行时,框架应该是不可见的。应该在用户点击任一链接时显示。只有在单击文件文本时才应显示帧选择项目。当人重新点击时,框架应该消失。 – kittenparry
它似乎在这个小提琴上工作:https://jsfiddle.net/u3bk7fvk/,除非我误解了这个问题。 – MrMadsen