Copy link to clipboard
Copied
So I've got a "Game" I've made in Acrobat where the user clicks on certain buttons and a layer appears. I wanted to do a final "congratulations" thing at the end when they click on the finish button.
Basically If "Layer 20" and "Layer 11" (and some others that I haven't done yet) are visible and the rest are not then I want the button "Complete" to appear.
Otherwise I'd like it to reset the visibility of the layers to the default state.
This is as far as I've got:
function FindOCG(cName) {
var aOCGs = this.getOCGs();
for(var i=0; aOCGs && i<aOCGs.length;i++) {
if(aOCGs[i].name == cName) return aOCGs[i];
}
return null;
}
if(FindOCG("Layer 20"&&"Layer 11").state=true)
{
this.getField("Complete").display=display.visible;
}
Else
{
this.getField("Complete").display=display.hidden;
}
If 20 and 11 are visible it appears okay, but if they're not visible and I click the Finish button then those layers appear and so does the finish button.
Please can anyone help, I'm so stuck now.
In addition to Bernd's correct comment, the comparison opeator in JS is either "==" or "===". So change this line:
if (FindOCG("Layer 20"&&"Layer 11").state=true)
to:
if (FindOCG("Layer 20").state==true && FindOCG("Layer 11").state==true)
Copy link to clipboard
Copied
Following is not possible:
FindOCG("Layer 20"&&"Layer 11")
FindOCG accepts only one name.
Copy link to clipboard
Copied
Thank you, that is very good to know!
Copy link to clipboard
Copied
In addition to Bernd's correct comment, the comparison opeator in JS is either "==" or "===". So change this line:
if (FindOCG("Layer 20"&&"Layer 11").state=true)
to:
if (FindOCG("Layer 20").state==true && FindOCG("Layer 11").state==true)
Copy link to clipboard
Copied
Is "==true" necessary?
Copy link to clipboard
Copied
No, it's not. I just left it because it was in the original code.
Copy link to clipboard
Copied
Thank you SO much! That work's perfectly!