在sharrre Jquery中动态更改url
Dynamically changing url in sharrre Jquery
我的问题如下:
我的页面上有多个过滤器,它们动态地过滤事件,所以当我点击任何过滤器时,我的url都会更改,而不会重新加载页面。
例如:
http://.../schedule/#Screening,免费
http://.../schedule/#Talk,世博
然后,我与Sharrre:共享按钮
.social.social--share-filters
a.icon.icon-twitter.js-twitter-filters(href="#", target="_blank")
a.icon.icon-linkedin2.js-linkedin-filters(href="#", target="_blank")
a.icon.icon-facebook.js-facebook-filters(href="#", target="_blank")
$('.js-facebook-filters').sharrre({
share: {
facebook: true,
},
url: window.location.href,
enableTracking: false,
enableHover: false,
click: function(api, options) {
api.simulateClick();
api.openPopup('facebook');
}
});
尽管在sharrre中我有一个url变量,它等于当前链接,但它只共享第一次加载页面时派生的链接。
我试着把它放在图标上的点击事件中——这不起作用。我试图将sharrre放在一个函数中(例如initializeShare)并执行window.initialiseShare = initialiseShare;
,但这也不起作用。我尝试删除和附加按钮,更改数据url属性,但它也不起作用。
function initialiseShare(link) {
$('.js-twitter-filters').sharrre({
share: {
twitter: true,
},
enableTracking: false,
enableHover: false,
click: function(api, options) {
api.simulateClick();
api.openPopup('twitter');
} }); }
+
$(document).ready(function() {
initialiseShare();
$('.js-twitter-filters').on('click', function(){
var clone = $('.js-twitter-filters').clone();
$('.js-twitter-filters').remove();
$('.social--share-filters').append(clone);
$('.js-twitter-filters').data('url', window.location.href);
initialiseShare();
return false;
});
});
+
图标的翡翠
.social.social--share-filters
a.icon.icon-twitter.js-twitter-filters(href="#", target="_blank" data-url="#")
求你了,救命!
提前谢谢!
附言:我可以使用任何其他解决方案,除了那些可能导致按钮无法在设计中定制的解决方案。
试试这个:
$('body').on('DOMNodeInserted', '.js-twitter-filters', function(e) {
$(this).sharrre({
share: {
twitter: true,
},
enableTracking: false,
enableHover: false,
click: function(api, options) {
api.simulateClick();
api.openPopup('twitter');
}
});
});
解释:
您正在尝试绑定到动态加载的元素。当您的脚本在页面加载时执行时,jQuery无法使用"sharrre"执行元素绑定,因此您可以使用.on()
实时绑定委托在插入后绑定到元素。
参考:
- http://api.jquery.com/on/
相关文章:
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- 以角度管理动态URL
- javascript在动态Url中匹配并添加字符串
- 使用服务工作者动态缓存HTTP URL的包装器
- 在angularjs中动态路由url路径
- 使用JavaScript制作动态HTML页面以重定向到URL
- 在angular.js中定义动态URL的重定向
- 在混合基本 URL 下动态加载 require.js 模块
- 动态更改字体颜色和URL
- 悬停打开 DIV 时,DIV 内容应从单独的 URL 动态加载
- Safari:无法从 blob URL 动态加载视频
- 使用正确的 URL 动态创建 HTML 页面
- 在Meteor中,如何附加应用程序's的根url动态映射到图像路径
- AngularJS V1.4.7指令模板URL动态路径
- 根据url动态更改页面内容
- 更新url.动态动作与剃刀变量
- 在表单提交时向URL动态添加GET参数
- 为服务器上不存在文件的URL动态创建内容的正确方法
- 将URL动态传递给自定义SoundCloud播放器
- 使用JavaScript根据URL动态更改href上的值