2012-12-18 81 views
1

我必須動態地將邊距設置爲元素。早些時候,它是通過像下面這樣完成的。在javascript中動態設置樣式

var starLink = star.createChild({ 
      tag: 'a', 
      html: this.values[i], 
      href: 'javascript:void',   
      title: this.showTitles ? this.titles[i] : '' 
     }); 

     // Prepare division settings 
     if(this.split) { 
      var odd = (i % this.split);    
      star.setWidth(sw); 
      starLink.setStyle('margin-left', '-' + (odd * sw) + 'px');   
     } 

但現在我改變了我的代碼如下。我將如何在這裏設置保證金?

var starLink = document.createElement('a');   
     starLink.href = 'javascript:void';   
     starLink.title = this.showTitles ? this.titles[i] : ''; 
     starLink.innerHTML = this.values[i]; 
     star.appendChild(starLink); 

// Prepare division settings 
     if(this.split) { 
      var odd = (i % this.split);    
      star.setWidth(sw); 
      starLink.setStyle('margin-left', '-' + (odd * sw) + 'px');    
     } 
+1

element.style.margin或者你應該使用setAttribute方法? – 2012-12-18 06:40:05

+0

我試過了。但是不要找到正確的方法。你能給我一個示例代碼嗎? – 1355

回答

0

如何

var starLink = document.createElement('a');   
starLink.href = 'javascript:void';   
starLink.title = this.showTitles ? this.titles[i] : ''; 
starLink.innerHTML = this.values[i]; 
star.appendChild(starLink); 

// Prepare division settings 
if(this.split) { 
    var odd = (i % this.split);    
    star.setWidth(sw); 
    starLink.style.marginLeft = '-' + (odd * sw) + 'px';    
} 
+0

非常感謝:) – 1355

2

starLink.style.marginLeft = '10px的' 或 starLink.style.margin = 「0像素0像素0像素」 + X偏移+ 「PX」;