We moved to new unified forum!

Please post all new support queries in our New Forum.

T3 Community Discussion & Support

Let's build the best free Joomla template framework, together!
  1. Henrik Holm Nielsen
  2. General Discussion
  3. Wednesday, 20 August 2014
  4.  Subscribe via email
Hello,

I have a conflict between T3V3 and a Virtuemart Scroller, which is driving me nuts. And since the developer of the VM Scroller has not come up with anything useful, i'm now starting to get a bit desperate and hope someone here have an idea whats going on.

A few facts about the site:
Joomla 2.5.24
Virtuemart 2.0.22c - upgrade to 2.6 planned in a few months, when we have control over the custom settings made to templates etc.
T3V3 Framework 2.3.1 and BS3 template 2.1.6 (issue happens in both bootstrap and regular T3 template)
URL: http://design.2ndlevel.dk/ebike_center (please remove underscore in ebikecenter - inserted because of missing "nofollow" attribute on the link)

Also - switcing to a non-T3V3 based template, solves the problem immediately.

The Problem:
On the front page (and a number of sub pages) we have a module showing Virtuemart products based on various criterias. The problem is, that the product title is a link - but it is NOT working in T3V3 based templates! When you click it, nothing happens :( If you right-click and select "Open in new browser/tab" it works fine :(

I have tried disabling custom.css stylesheet as well as module overrides, but to no avail :(
I have also tried to disable all css styles using Firebug / Developer tools, but still no difference :(

So - I really really hope, someone in here would have a suggestion as to where the solution to this issue lies? And what the culprit is?

Cheers,
Henrik Holm Nielsen
Comment
There are no comments made yet.
Accepted Answer
Accepted Answer Pending Moderation
0
Votes
Undo
You're welcome Henrik.

I've just printed all events fired after clicking this link (manually of course).

jQuery("body").bind("click", function(e) {
console.log(e);
});


Same is possible in firebug ;)

I found this event. (image shows you all events on this link)

type=mousedown?

This is the problem. It should be click not mousedown. So it's no wonder that after one second hold down on this link it works (cause of mousedown).

I don't know where and WHY this event was set, but with unbind you can destroy it.

Regards and good luck,
Eugen
Attachments (1)
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # Permalink
Accepted Answer Pending Moderation
0
Votes
Undo
Hi,

it was hard to find the problem, but i got it.

The problem (image) is the "module-ct" div (div class="module-ct";). Something is wrong with it....

If you remove this div (i mean not the css class! Delete complete div and put the content of this to 'module-inner') everything works fine.

So the problem is with t3 core package. I think only t3 developer (or someone with many time :) ) can find the answer.

Hope this helps...

Regards,
Eugen
Attachments (1)
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 1
Accepted Answer Pending Moderation
0
Votes
Undo
Great solutions Eugen, I tested and it worked properly.

@Henrik Holm Nielsen: you should try Eugen's suggestion. If you need more help, let me know. We are willing to help you.
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 2
Accepted Answer Pending Moderation
0
Votes
Undo
Guys - you have no idea how much I appreciate your help here. Seriously...!!

However - although you are definitely on to something, it didn't quite do it :(
If I do the changes you suggest, by editing the HTML in Firebug - it actually seems to be working!

But when I create a html override of modules.php, where I take out the entire "module-ct"-div, it does not affect the issue. Looking at the source (see attached image), I can verify that the div has gone - but not the problem :(

If you guys have any suggestions or ideas, I am all ears...! Also I will be working fulltime on this today, and if I find anything new as well, I'll keep you posted!

Thanx a lot!
Attachments (1)
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 3
Accepted Answer Pending Moderation
0
Votes
Undo
For what it's worth, I also just tried removing the module-inner div, which in firebug seemed to solve the problem, however when removing the actual code in modules.php, it had no effect on the page...

Cheers ;)
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 4
Accepted Answer Pending Moderation
0
Votes
Undo
Another observation - if I click on a link in the scroller, and hold down the mouse button for a few secs, it actually sends me to the destination when I release the button...!
Not sure what this info indicates - maybe it rings a bell for someone?

Cheers
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 5
Accepted Answer Pending Moderation
0
Votes
Undo
Hi Henrik,

ok that is really strange... You're right if i click on the link and hold down for one second, it seems to be working....

I will try again to find a solution.

Regards,
Eugen
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 6
Accepted Answer Pending Moderation
0
Votes
Undo
Hi Eugen,

I really appreciate it - thanx for your effort!

Cheers
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 7
Accepted Answer Pending Moderation
0
Votes
Undo
Hi Henrik,

i think i got it again ;)

Somewhere (don't know where) is any event that is bind to body via jQuery.

Can you try this and tell me if this working?

jQuery("body";).unbind();

Regards,
Eugen
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 8
Accepted Answer Pending Moderation
0
Votes
Undo
Hi Eugen.

I'm not very much at home with Javascript/Jquery, so please forgive me for this question - but where/how do I do this?
Do I just insert this somewhere in the template?

Cheers
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 9
Accepted Answer Pending Moderation
0
Votes
Undo
Hi Henrik,

yes in your "core" template file (somewhere inside <head> - block).

<script type="text/javascript">
(function($){
$("body";).unbind();
})(jQuery);
</script>
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 10
Accepted Answer Pending Moderation
0
Votes
Undo
You need to put this after <jdoc:include type="head" />

And please use the complete function

(function($){
$("body").unbind();
})(jQuery);
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 11
Accepted Answer Pending Moderation
0
Votes
Undo
t3 template --> tpls and then your .php file where <head> is included

P.S. after $("body" its only ";)" not a smily ;)
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 12
Accepted Answer Pending Moderation
0
Votes
Undo
Damn this smily.... I mean " ) "

You need to load all your resources first, that is why you need to include it after <jdoc:include type="head" />
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 13
Accepted Answer Pending Moderation
0
Votes
Undo
Remove " ; " after body please
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 14
Accepted Answer Pending Moderation
0
Votes
Undo
P.S.

surround the code with $(document).ready(function() { } so

(function($){
$(document).ready(function() { the body unbind code });
}
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 15
Accepted Answer Pending Moderation
0
Votes
Undo
I have placed it in there now, and removed the ";" - but still seem to have the problem...

<head>
<jdoc:include type="head" />
<script type="text/javascript">
(function($){
$("body").unbind();
})(jQuery);
</script>
<?php $this->loadBlock('head') ?>
</head>
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 16
Accepted Answer Pending Moderation
0
Votes
Undo
see the last post

surround the body unbind code with document ready

(function($){
$(document).ready(function() { the body unbind code });
})(jQuery);
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 17
Accepted Answer Pending Moderation
0
Votes
Undo
Also just tried adding it via template manager in "Custom Code" tab before </head> - same result....
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 18
Accepted Answer Pending Moderation
0
Votes
Undo
Yeah i saw it....

Try with document ready, than we will see it again.

If i try this function in the console (chrome) it works.
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 19
Accepted Answer Pending Moderation
0
Votes
Undo
Yiihaa - it works...!!!!!! Wow....! A really nice catch...!!!

How did you actually find out this was the problem? Does Chrome have a debugger for Javascripts/jQuery which is easier to use/understand than Firebug? Because I could not find anything using Firebug - allthough I admit, that I have a very minimal set of skills when it comes to Javascript/jQuery....

Really really appreciate you help!!!
Comment
There are no comments made yet.
  1. more than a month ago
  2. General Discussion
  3. # 20
  • Page :
  • 1
  • 2


There are no replies made for this post yet.
However, you are not allowed to reply to this post.