サブテーブルの行追加/削除ボタンの位置変更

下記のスレッドの、からにさんのコードをベースにして"サブテーブルの行追加/削除ボタンの位置変更"を、「指定したテーブル」に対して、「固定値を与えることなく」調整するためのコードを書いてみました。

ベース:
    https://developer.cybozu.io/hc/ja/community/posts/360018051303-%E3%82%B5%E3%83%96%E3%83%86%E3%83%BC%E3%83%96%E3%83%AB%E3%82%92%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%E3%81%AE%E4%B8%AD%E3%81%AB%E5%85%A5%E3%82%8C%E3%81%9F%E3%81%84

コード:

var adjustLeft = '0px';

function subTableIDRtn(fieldCode) {
var subTableObj = {};
var subTableList = cybozu.data.page.SCHEMA_DATA.subTable;
for(var i in subTableList) {
if(subTableList[i].var == fieldCode) {
var subTableObj = subTableList[i];
break;
}
}
return subTableObj ? subTableObj.id : undefined;
}

kintone.events.on(['app.record.create.change.テーブルのフィールドコード', 'app.record.edit.change.テーブルのフィールドコード'], function(event) {
var id = subTableIDRtn("テーブルのフィールドコード");
var subTableElement = $(".subtable-" + id).get(0);
var subTableOpElements = subTableElement.getElementsByClassName("subtable-operation-gaia");
[].forEach.call(subTableOpElements, function(button){
button.style.position = 'absolute';
button.style.marginLeft = adjustLeft;
button.style.marginTop = '30px';
});
return event;
});

kintone.events.on(['app.record.create.show', 'app.record.edit.show'], function(event) {
var id = subTableIDRtn("テーブルのフィールドコード");
var subTableElement = $(".subtable-" + id).get(0);
var subTableOpElements = subTableElement.getElementsByClassName("subtable-operation-gaia");
adjustLeft = Math.floor(subTableElement.getBoundingClientRect().left - subTableOpElements.item(0).getBoundingClientRect().left) + 'px';
[].forEach.call(subTableOpElements, function(button){
button.style.position = 'absolute';
button.style.marginLeft = adjustLeft;
button.style.marginTop = '30px';
});
return event;
});

何かのお役に立ちましたら幸いです。
また、リファクタリングのアイデアや注意点などがありましたら、アドバイスを頂けると幸いです。