Difference between revisions of "カスタムコマンドの例を示します"

From GXtest Wiki
Jump to: navigation, search
(複数レベルの階層にあるカスタムメニューのクリック)
 
(2 intermediate revisions by one user not shown)
Line 11: Line 11:
 
==日付コントロールの値と現在の日付との比較==
 
==日付コントロールの値と現在の日付との比較==
  
function CustomCommand (paramJS, currentGXVersion, currentLanguage){
+
    function CustomCommand (paramJS, currentGXVersion, currentLanguage){
 
         var day=((new Date().getDate()<10) ? "0" : "")+new Date().getDate();  
 
         var day=((new Date().getDate()<10) ? "0" : "")+new Date().getDate();  
 
         var month=(new Date().getMonth()+1<10) ? "0" +(new Date().getMonth()+1): new Date().getMonth()+1;
 
         var month=(new Date().getMonth()+1<10) ? "0" +(new Date().getMonth()+1): new Date().getMonth()+1;
Line 24: Line 24:
 
     }
 
     }
  
 
 
 
==画像が壊れていないか、また画像が読み込めるかどうかの確認==
 
==画像が壊れていないか、また画像が読み込めるかどうかの確認==
  
 
   
 
   
function CustomCommand (paramJS, currentGXVersion, currentLanguage)  {
+
  function CustomCommand (paramJS, currentGXVersion, currentLanguage)  {
 
     result = "OK";
 
     result = "OK";
 
       for (var i = 0; i < window.document.images.length; i++) {
 
       for (var i = 0; i < window.document.images.length; i++) {
Line 50: Line 49:
  
  
function CustomCommand (paramJS, currentGXVersion, currentLanguage) {
+
  function CustomCommand (paramJS, currentGXVersion, currentLanguage) {
 
     result = "OK";
 
     result = "OK";
 
             var menuItems = paramJS.split('/');
 
             var menuItems = paramJS.split('/');

Latest revision as of 16:05, 1 March 2018

Spanish.gif
English.gif
Japan.gif


カスタムコマンドの例を示します。直接追加するか、参考として使用してください。


日付コントロールの値と現在の日付との比較

   function CustomCommand (paramJS, currentGXVersion, currentLanguage){
       var day=((new Date().getDate()<10) ? "0" : "")+new Date().getDate(); 
       var month=(new Date().getMonth()+1<10) ? "0" +(new Date().getMonth()+1): new Date().getMonth()+1;
       var year=(((new Date().getFullYear())%100<10) ? "0":"") +(new Date().getFullYear())%100;
       var date_var =month.concat("/".concat(day.concat("/".concat(year))));
       if((paramJS==date_var)){
           result = "OK";
       }else{
           result = "Error, is not today";
       }  
   return result;
   }

画像が壊れていないか、また画像が読み込めるかどうかの確認

 function CustomCommand (paramJS, currentGXVersion, currentLanguage)  {
   result = "OK";
      for (var i = 0; i < window.document.images.length; i++) {
           if (!(window.document.images[i].complete)) {
              result = "ERROR, image with src:"+window.document.images[i].src+" not found";
           }
   
           if (typeof window.document.images[i].naturalWidth != "undefined" && window.document.images[i].naturalWidth == 0) {
              result = "ERROR, image with src:"+window.document.images[i].src+" not found";
           }
   
      }
   
      /* It must be returned in result variable the value "OK" if the command executed successufuly, or an error description in other case */
      return result;
   }

複数レベルの階層にあるカスタムメニューのクリック

paramJS の例:Vehicles/Cars/Sedan/1.0L


 function CustomCommand (paramJS, currentGXVersion, currentLanguage) {
   result = "OK";
           var menuItems = paramJS.split('/');
           for (var menuOrder = 0; menuOrder < menuItems.length; menuOrder++) {
               var menuLevelName = 'menu_level'+(menuOrder+1).toString()+'_text';
               var elems = window.document.getElementsByClassName(menuLevelName);
               
                 for (var i = 0; i < elems.length; i++) {
                         var menuItem = elems[i];
                       if (menuItems.length == (menuOrder+1)){
                           menuItem = elems[i].childNodes[0];                
                       }
                       if (menuItem.innerHTML==menuItems[menuOrder]) {
                          menuItem.click();
                          break;
                       }
                 }         
              
           }    
      /* It must be returned in result variable the value "OK" if the command executed successufuly, or an error description in other case */
      return result;
   }