#163015: "Unable to create a tutorial due to missing ID attributes in the HTML"
這是關於哪方面的案件?
發生什麼事? 請從下方選擇
細節描述
-
• 請簡明精確地解釋你的建議,以便讓人一目了然。
Please, add ID to all elements in the game to make it compatible with BGA tutorial creator, and check for overlapping DIVs. This BGA page explains this in more detail: en.doc.boardgamearena.com/Tutorials_checklist
Specifically:
"If a player trying to create a tutorial reports you an issue about (3):
- you might have some overlapping elements preventing to access the "div" tag of an important interface element to attach tutorial content to it.
- you might have some missing "ID" on elements of the interface, preventing the tutorial author to attach elements to them." • 你的瀏覽器是什麼?
Google Chrome v134
案件沿革
<div class="um_umbrella bg-umbrella_2" style="position: relative;">
I did an experiment with Chrome dev tools, and when I manually add an ID to this div, then the tutorial works.
boardgamearena.com/archive/replay/250326-1050/?table=651495995&player=97510471&comments=88656919;
BGA explains the likely cause on this page: en.doc.boardgamearena.com/Tutorials_checklist
[Quote]
Each action of the replay should be replayable by triggering it manually (i.e. by reproducing the exact same sequence as done played originally during the game
(...) most likely reasons for the issue are:
- that you have triggered this.ajaxcall() / this.bgaPerformAction() programmatically in a notification handling function or a callback instead of only on a user interface action.
- or that there are several way to trigger the next action with different URL/arguments. You should make sure that the same game actions are triggered with the same "ajaxcall" / "bgaPerformAction" whatever the UX path used.
[/Quote]
activateCards
activatePoints
activateUmbrellas
That if() looks like this:
if (this.root.isReadOnly()) return;
Since isReadOnly() returns true in a replay, it causes those 3 functions to quit prematurely.
Removing all 3 occurrences of that if() fixes the replay.
<div class="um_arrow bg-arrow_1"></div>
<div class="um_arrow bg-arrow_2"></div>
<div class="um_arrow bg-arrow_3"></div>
<div class="um_arrow bg-arrow_4"></div>
Note that those div were already encapsulated in other div with id, like I usually do. But now you have both id
I'm aware the outer divs have IDs but the BGA tutorial interface needs the inner divs with IDs too. If it's not much trouble could you please check why your last fix wasn't applied?
I can do a workaround but it won't be as nice as if the IDs were there.
為本案件添加內容
- 其他同樣狀況的桌號/步數
- 按 F5 是否解決了這個問題?
- 問題是否發生了好幾次?每次都發生?時好時壞?
- 建議將此錯誤的螢幕截圖上傳到 Imgur.com 並轉貼連結。

