簡體   English   中英

在javascript中將樣式顯示從none更改為block?

[英]Changing the style display from none to block in javascript?

這是html代碼片段

<li style="opacity: 1;">
    <a id="LinkDisplay" class="optionsDropDown" style="color:#FF0000;display:none" href="javascript:showThisLink('LinkId');">
</li>

這是在加載時調用的jquery函數

$(function () {
    $.ajax({
        url: url,
        dataType: 'json',
        data: '',
        type: 'POST',
        success: function (data) {
            alert("Test");
            document.getElementById("LinkDisplay").style.diplay="block"; // line 1
            // after this line execution i should see the link as i have
            // changed the link display from none to block but it is still invisible
        });
    });
}

第1行執行后,我不確定為什么我的鏈接不可見?

您還沒有更改代碼中的顯示屬性

 document.getElementById("LinkDisplay").style.display="block"

在line1之后將此代碼插入到您的函數中

既然你正在使用jQuery,你可以寫

$("#elemId").show()

li設置為opacity: 0 ,這使其透明。

您需要將其“不透明度”更新為1以使其可見。

替換這個:

document.getElementById("LinkDisplay").style.color = "#FF0000";

有了這個:

$('#LinkDisplay').show().parent('li').css({opacity: 1});

第二行是jQuery(因為你已經使用了jQuery並且更容易找到父節點) - 它正在找到LinkDisplay鏈接並更改display: none to display: block ,然后改變父li的不透明度來實現它可見。

工作jsFiddle

它看起來你已經在使用jquery,所以你可以使用$ selector語法簡化一下:

$('#LinkDisplay').css('display', 'block')

您還可以使用jQuery show方法縮短第一部分,如下所示:

$('#LinkDisplay').show()

jQuery選擇可以找到使用的ID或類元素#的ID和. 對於課程。 jQuery css方法允許您使用各種方法獲取和設置屬性。 並且jQuery父方法可以快速允許您從DOM中的元素向上遍歷以查找其他標記。

使用jQuery:

$('#LinkDisplay').css('display','block');
$('#LinkDisplay').parent().css('opacity','1');

問題是行中顯示的拼寫:

document.getElementById("LinkDisplay").style.display="block";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM