我正在尝试在我的网站上展示一些团队工作人员,所以,我想展示一些小信息,比如图片和名称,然后,当你点击它时,它会弹出一个带有关于这个人的洞信息的div。
我正在尝试通过getElementsByClassName来实现它,但是,它不起作用,它只适用于第一个节点。
我有两个div,一个名为'popup'的div包含信息,另一个包含不透明度的全尺寸div。
所以,我有打开和关闭div的功能:
function showWindow(className,number){
var obj = document.getElementsByClassName(className);
$obj[number].fadeIn(1000);
var obj2 = document.getElementById('transparentBox');
obj2.style.display='block';
}
function closeWindow(className,number){
var obj = document.getElementsByClassName(className);
$obj[number].fadeOut("slow");
var obj2 = document.getElementById('transparentBox');
$(obj2).fadeOut(1000);
}
有趣的是,如果我点击第一个元素节点,它确实有效,但它对其他节点不起作用(即第一个节点= obj [0])。对于其他的,只显示transparentBox。
两个div的css:
#transparentBox
{
position: fixed;
display:none;
padding:0;
margin:0;
top: 0;
left: 0;
width: 100%;
height: 100%;
background:rgba(255,255,255,0.5);
z-index: 499;
}
.popup {
position: absolute;
display:none;
top: 0;
bottom: 0;
left: 0;
right: 0;
width:700px;
padding:20px;
background-color:white;
margin: auto;
z-index:500;
overflow-y: scroll;
}
我正在通过更多信息呼叫他们
但它只显示第一个调用showWindow('popup',0),其他调用不显示弹出窗口,只显示transparentBox。
答案 0 :(得分:0)
String userId = "73279386-5459-4316-9ff9-7c6b7b84029a";
Uri uri = Uri.parse(MyContentProvider.CONTENT_URI_USERS + "/" + userId);
return new CursorLoader(getActivity(), uri, projection, null, null, null);
是我想要的,而不是$(obj[number])
。所以你的fadeIn / fadeOut应该变成:$obj(number)
答案 1 :(得分:0)
我弄清楚发生了什么错误。 问题是,在我的HTML代码中,transparentBox div只覆盖了第一个弹出div,这就是其他没有出现的原因。
修正了它。感谢