jquery - naturalWidth - Egenskapen 'naturalWidth' finns inte på typen 'HTMLElement'


Jag försöker få åtkomst till "naturalWidth" i TypeScript, men om jag får ett kompileringsfel eller om jag får en röd linje under "naturalWidth". Eftersom $ ("#contentImg").height() returnerar 0 för mig i JavaScript och TypeScript kan jag inte manipulera bilden. Bilden varierar i storlek. Om jag gör det i JavaScript fungerar det bra. Jag har försökt;

  document.getElementById('contentImg').naturalWidth;
  $("#contentImg")[0].naturalWidth.

Det här fungerar i JavaScript men inte i TypeScript. Finns det ett sätt att få naturalWidth/Height?

Svar #1

document.getElementById returnerar ett HTMLElement som saknar naturalWidth-egenskapen.
Det du letar efter är HTMLImageElement som faktiskt har denna naturalWidth-egenskap:

let image =  document.getElementById('contentImg') as HTMLImageElement;
console.log(image.naturalWidth); // should be valid

Relaterade artiklar