2015-11-06 36 views
0

我尝试发送值jQuery函数,函数里面我有一些类,我需要在每种情况下发送值jQuery函数

function videos_pop(idv) 
{ 
jQuery('.popup-youtube, .popup-vimeo, .popup-gmaps').magnificPopup({ 
disableOn: 700, 
type:'iframe', 
mainClass:'mfp-fade', 
removalDelay:160, 
preloader:false, 
fixedContentPos:false 
}); 
} 

发送一些瓦尔在这种情况下,值内功能it's通(IDV),我需要这个以这种方式添加到每个类的末尾:

jQuery的(”弹出-的YouTube ** + ** IDV,.popup-VIMEO ** + IDV * *,.popup-gmaps ** + ** IDV')。magnificPopup({

的问题,我认为软件写坏sintax,这和鸵鸟政策取值跨功能派,因为我supose我必须在特殊的软件写的,因为类内(“”)分离

只有it's这个问题,thank's的帮助我在这,对于

回答

0

做到这一点的最简单的方法是连接的选择的字符串。

function videos_pop(idv) 
{ 
    var selector = '.popup-youtube' + idv + ', .popup-vimeo' + idv + ', .popup-gmaps' + idv; 
    jQuery(selector).magnificPopup({ 
     disableOn: 700, 
     type:'iframe', 
     mainClass:'mfp-fade', 
     removalDelay:160, 
     preloader:false, 
     fixedContentPos:false 
    }); 
} 

你也可以把一个占位符,在选择和再使用的.split().join()组合。

function videos_pop(idv) 
{ 
    var selector = '.popup-youtube[idv], .popup-vimeo[idv], .popup-gmaps[idv]' 
     .split('[idv]') 
     .join(idv); 
    jQuery(selector).magnificPopup({ 
     disableOn: 700, 
     type:'iframe', 
     mainClass:'mfp-fade', 
     removalDelay:160, 
     preloader:false, 
     fixedContentPos:false 
    }); 
} 

...或创建一个正则表达式,并使用.replace()(只记得全球g标志)。

function videos_pop(idv) 
{ 
    var selector = '.popup-youtube[idv], .popup-vimeo[idv], .popup-gmaps[idv]' 
     .replace(/\[idv\]/g, idv); 
    jQuery(selector).magnificPopup({ 
     disableOn: 700, 
     type:'iframe', 
     mainClass:'mfp-fade', 
     removalDelay:160, 
     preloader:false, 
     fixedContentPos:false 
    }); 
} 
+0

Thank's,伟大的! – Robert