如何将按钮背景颜色从石灰绿色更改回默认设置?

时间:2012-12-24 18:44:30

标签: javascript google-apps-script

我正在尝试将背景按钮颜色从石灰绿色变回原始颜色。我现在已经有了实现这一目标的方法,但似乎必须有一种更有效的方法来实现这一目标。

function doGet(e) {
  var app = UiApp.createApplication();

  var productInfoButton = app.createButton("Products").setId('productInfoButton');

  var handlerL = app.createServerClickHandler('prodCompleteHandlerL');
  var productCompleteCheckBox = app.createCheckBox().setId("productCompleteCheckBox")
  .setName("productCompleteCheckBox");
  productCompleteCheckBox.addClickHandler(handlerL);
  handlerL.addCallbackElement(productInfoButton);

  app.add(productInfoButton);
  app.add(productCompleteCheckBox);

  return app;
}

function prodCompleteHandlerL(e) {
  var app = UiApp.getActiveApplication();
if(e.parameter.productCompleteCheckBox == 'true'){
  app.getElementById('productInfoButton').setStyleAttribute('background', 'lime')
}else{
  app.getElementById('productInfoButton').setStyleAttribute('background', 'url("https://dl.dropbox.com/u/211279/hborder.png") repeat-x 0px -27px')
}
  return app;
}

1 个答案:

答案 0 :(得分:0)

更改类而不是直接更改背景选项是更可靠的方法。

在处理函数中使用background参数切换css类。

function clickHandler (e) {
    e.target.className = 'lime';
}

function prodCompleteHandler (e) {    
    e.target.className = 'standart'
}

以下是代码示例:http://jsfiddle.net/Ysaxv/