Yes, you just need to be aware of the relation between Opal and JS.
At a basic level all Ruby constants are also stored under the Opal namespace, and all methods are stored as properties starting with a "$".
So if you want for example use an Hash from JS you can do the following:
var hash = Opal.Hash.$new()
hash['$[]=']('a', 1)
console.log(hash.$inspect()) // => "{:a => 1}"
Calling blocks is a bit more tricky, but can still be done from js:
var array = [1,2,3]
// _p stands for proc
array.$each_with_index._p = function(number, index){ console.log(number, index) }
array.$each_with_index.call(array)
Luckily there's also a helper for blocks:
var array = [1,2,3]
// _p stands for proc
Opal.block_send(array, 'each_with_index', function(number, index){ console.log(number, index) })