2011-10-22 87 views
0
Id='a';  
linkId = '#dialog_link' + Id; 

htmlCode = '<p><a href="#" id="' + linkId + '" class="ui-state-default ui-corner-all"><span></span>Open Window</a></p>';   
$('#WindowsContainer').append(htmlCode); 

$(linkId).css('padding: .4em 1em .4em 20px;text-decoration: none;position: relative;'); 
$(linkId + ' span.ui-icon').css('margin: 0 5px 0 0;position: absolute;left: .2em;top: 50%;margin-top: -8px;'); 

最後兩行不會影響ID爲「dialog_linka」的樣式。動態地將元素添加到div並設置css樣式

回答

0

試試這個:

$(linkId).css({ 
    padding: ".4em 1em .4em 20px", 
    "text-decoration": "none", 
    position: "relative" 
}); 

你可能想重新讀取the API並檢查$.css()接受哪種值。

編輯:如果它不工作,那是因爲你還沒有創建的HTML正確:

htmlCode = '<p><a href="#" id="' + linkId + '" ...' 

因爲linkId"#dialog_linka",id屬性是id="#dialog_linka",當它應該是dialog_linka(不哈希值)。

另外,至少在示例代碼中,您沒有任何類.ui-icon的元素。

參見http://jsfiddle.net/YDYA6/進行演示。

+0

對不起,沒有工作,只有工作,如果預定義的元素在HTML,但如果由JS創建的元素(沒有工作)。 ..感謝 –

+0

這是因爲你給該元素一個無效的ID。見編輯的答案。 – JJJ

+0

感謝第一行工作成功,但第二個樣式$(linkId +'span.ui-icon')不工作,其中ui-icon類定義(我相信這一點)。很多感謝Juhana –

0

你需要通過你的CSS參數作爲地圖屬性值對的 -

$(linkId).css({'padding': '.4em 1em .4em 20px','text-decoration': 'none;position: relative'}); 

看到這裏的文檔 - http://api.jquery.com/css/

0

您正在使用css功能錯誤。

它應該是:

$(linkId).css({ 
    'padding': '.4em 1em .4em 20px', 
    'text-decoration': 'none', 
    'position': 'relative' 
}); 
+0

對不起,沒有工作,只有在html中預定義的元素,但如果由js創建的元素(NOT WORKED)...感謝 –

+0

那是因爲你將id設置爲'#dialog_link'+ Id,而html id元素無法啓動使用散列符號,它應該是'dialog_link'+ Id。 – realshadow

0

嘗試this.You可以添加樣式屬性,而不是使用的CSS功能。

Id='a';  
linkId = 'dialog_link' + Id; 

htmlCode = '<p><a href="#" id="' + linkId + '" class="ui-state-default ui-corner-all"><span class="ui-icon"></span>Open Window</a></p>';   
$('#WindowsContainer').append(htmlCode); 

$("#"+linkId).attr("style",'padding: .4em 1em .4em 20px;text-decoration: none;position: relative;'); 
$(linkId + ' span.ui-icon').attr("style",'margin: 0 5px 0 0;position: absolute;left: .2em;top: 50%;margin-top: -8px;'); 
3

使用樣式集從jquery中創建元素。

var id = 2; 
var link = $('<a/>',{ 
    id:'dialog_link' + id, 
    class: 'ui-state-default ui-corner-all', 
    text: 'Open Window', 
    css:{ 
    padding: '.4em 1em .4em 20px', 
    'text-decoration': 'none', 
    position: 'relative' 
    } 
}) 

演示 Jsfiddle

參考 - Creating element from jquery