我正在使用javascript document.getElementById来更改图像并在服务登录页面上隐藏和显示文本,其中包含17种不同的服务和扩展描述。在现在设置时,将打开登录页面,关闭所有服务,并在每个标题行旁边添加一个加号图像。当用户单击图像或标题时,图像将变为减号,文本将展开以显示隐藏文本。展开后,用户可以再次单击图像或标题,它将收缩并显示为最初登陆。
以下是我正在使用的脚本:
<script type="text/javascript">
<!--
function showHide(HID,IMG) {
if (document.getElementById(IMG).src.indexOf('expand') != -1) {
document.getElementById(IMG).src='../_media/images/common
/collapse.jpg';
document.getElementById(HID).className='visibleRow';
} else {
document.getElementById(IMG).src='../_media/images/common
/expand.jpg';
document.getElementById(HID).className='hiddenRow';
}
}
// -->
</script>
这是我正在使用的html(以一行为例):
<tr bgcolor="#051846">
<td>
<img id="image2" border="0" src="../_media/images/common/expand.jpg"
onclick="showHide('divHidden2','image2');" style="cursor:pointer;
float:left; margin: 10px 10px 0px 20px;" alt="" />
<span style="font-family: verdana, arial, sans-serif; font-size:
20px; font-weight:normal;color: #ffffff;cursor:pointer;line-height:
40px;font-variant: small-caps;margin: 0px 0px 10px 0px;"
onclick="showHide('divHidden2','image2');">Buy/Sell Decisions</span>
</td>
</tr>
<tr>
<td>
<div id="divHidden2" name="divHidden2" class="hiddenRow"><ul
class="hidden">
<li>Corporate divestitures and purchases.</li>
<li>Underwater resort in the Fiji Islands.</li>
<li>High-end golf community in southern Spain.</li>
<li>3,235-hectare multi-use commercial land subdivision in South
Africa.</li>
</ul>
</div>
</td>
</tr>
我正在尝试将主菜单从主页链接到服务页面,为每个隐藏的细节创建一个锚点:
<div id="divHidden2" name="divHidden2" class="hiddenRow">
在主页上,菜单是所有服务的列表,其中包含指向服务页面和锚点的超链接。
<a href="services/services.shtml#divHidden2">
我创建锚点的过程似乎正常,但是,当打开页面时,我无法看到隐藏文本。我已经看过在一个href和许多其他方法中包含javascript,但没有任何东西能够将某人从主页引导到服务页面,并扩展了该特定服务。我的初始页面通过了W3C验证测试。
谢谢。
答案 0 :(得分:0)
首先,在HTML页面上添加CSS和Javascript不是一个好习惯。 如何使用setAttribute方法?
var img = document.getElementById('divID');
img.onclick = foo;
function foo(img) {
img.setAttribute("style", "display:none");
}
当我强调W3验证测试时,我希望有人能告诉我这个技巧。我刚给你代码隐藏代码。您可以通过设置要显示的样式来找到显示图像的方法:块。
答案 1 :(得分:0)
我能够在其他地方获得这个问题的答案,并认为如果其他人有类似的情况,我会在这里发布。
在javascript本身,我需要添加:
$scope.contactList = ContactService.getContactList();
$scope.selectedContact = function(contact){
console.log(contact);
console.log($scope.filteredArray[0]);
}
然后我需要通过将其更改为:
来相应地制作一个href $(function() {
// find out what our query parameters contain.
var query = location.search;
// isolate the position of the equal sign.
var equalIndex = query.indexOf('=');
// extract the image's id.
var imageId = query.substring(equalIndex + 1);
// click on the appropriate image.
$('#' + imageId).click();
});
本质上,我强迫onclick点击,以便隐藏文本在打开时显示。不同之处在于它与图像有关而不是div。我希望这对其他人有益。