Well, this is not so simple because I use SmartMenus in combination with a lot of other stuff such as custom tags. However, here is a toy example which demonstrates three problems: https://jsfiddle.net/zLnqcb6y/.
I managed to solve all of these problems, but I need to do a lot of hacking (including code changes) for this purpose.
I think what would really be needed here were hooks in the code. For instance, problem 3 could be solved easily if you would provide a hook for the docClick function.