I’m helping a friend with his site and after updating his WordPress installation to address the recent security issue, the JPlayer plugin that was handling audio on his site stopped working.
Chrome’s console shows the error in the title, but I don’t know JS well enough to be able to debug it properly. I’m pretty sure that the plugin itself is loaded correctly, along with JQuery, in the page header. I checked it against the plugin’s instructions and it all appears fine.
I’ve also updated the plugin itself to ensure that it’s not some compatibility issue.
I did not build his site, nor am I familiar with this particular plugin at all, I’m just trying to see if it’s an easy fix or if I have to restore a backup.
I assume it has something to do with how his web designer (they had a falling out) implemented it in the main.js file, but that’s about as far as I’ve gotten.
Help?
Really condensing and removing parts of main.js, it looks like
If you look closely at that, you’ll see that there is a distinct possibility that
PlaylistPlay
can be called without$player
being set to$(this)
, it’s actually almost a certaintity, which means that$player
isfalse
, and doingdoesn’t really work, see the console output that confirms the variable is
false
The plugin is not initializing correctly. On
$(document).ready()
it’s trying to initialize the plugin and it’s reporting a Flash error.Here’s the significant part of the code:
Digging a bit deeper, I can trace this back to the
vimeo.jplayer
in the specific code block:That function is throwing an exception because
this._getMovie()
does not have a property namedfl_volume
.The error you actually see is a side-effect of this failure. You could try removing the line:
this._flashError(b)
from the above statement and see if the error can be safely ignored.