从 jquery 的 fancybox 结果中测试和去除字符

test and strip characters from jquery result for fancybox

$.fancybox.open({
    helpers: {
        title: {
            type: 'inside'
        },
        buttons: {}
                    },
                    padding : 0,
                    href: $('#url').val(),
.......

我想检查 href: 的值并从结果中去除 http: 和 https:。我对 jquery 和 javascript 并不是那么好,更不用说 fancybox 之类的东西了。

建议?

你可以做一个split/slice/join

$('#url').val().split('://').slice( $('#url').val().split('://').length-1 ).join('')

像这样

$.fancybox.open({
    helpers: {
      title: {
          type: 'inside'
      },
      buttons: {}
                  },
                  padding : 0,
                  href: $('#url').val().split('://').slice( $('#url').val().split('://').length-1 ).join(''),
.......

下面的示例展示了如何确保它不会在没有协议的情况下中断

console.log( $('#url').val().split('://').slice( $('#url').val().split('://').length-1 ).join('') )

console.log( $('#url2').val().split('://').slice( $('#url2').val().split('://').length-1 ).join('') )
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input id="url" value="http://some.data.com">
<input id="url2" value="some.data.com">

我真的不应该问这个问题。我自己想出来了。 我最终是这样做的:

var url = $('#url').val();
if (url.substring(0, 5) == 'https') { 
    url = url.substring(6);
} elseif (url.substring(0, 4) == 'http') { 
    url = url.substring(5);
}

然后只使用

href: url,