.createElement('object')和许多params的语法问题

Syntax issues with .createElement('object') and a lot of params

本文关键字:params 语法 问题 许多 object createElement      更新时间:2023-09-26

如果您需要更多信息,请告诉我。

我正试图以这种方式用jquery动态创建一个"object"元素——这段代码位于一个函数/范围内,其中所有数据都可用,但我不知道如何在文档上创建对象。。。如果我只是将行粘贴为原始html并设置值(没有动态),那么在测试中效果很好。

var object = document.createElement('object');
$('#main').append(object);
//i've tried .html() .push() and .append()              
$(object).append('<object class='{FOO_CLASS}' 'width='{FOO_WIDTH}' height='{FOO_HEIGHT}' type='application/x-shockwave-flash' id='live_embed_player_flash' data='http://www.twitch.tv/widgets/live_embed_player.swf?channel={FOO_CHANNEL}'><param name='wmode' value='opaque' /><param name='allowFullScreen' value='true' /><param name='allowScriptAccess' value='always' /><param name='allowNetworking' value='all' /><param name='movie' value='http://www.twitch.tv/widgets/live_embed_player.swf' /><param name='flashvars' value='hostname=www.twitch.tv&channel={FOO_CHANNEL}&auto_play=false' /></object>');

整个对象的格式化外观。。我所尝试的一切都失败了。通常是由于代码从URL中读取//作为注释标记。我完全迷路了。。

<object
    class='{FOO_CLASS}'
    width='{FOO_WIDTH}'
    height='{FOO_HEIGHT}'
    type='application/x-shockwave-flash'
    id='live_embed_player_flash'
    data='http://www.twitch.tv/widgets/live_embed_player.swf?channel={FOO_CHANNEL}'>
<param
    name='wmode'
    value='opaque' />
<param
    name='allowFullScreen'
    value='true' />
<param
    name='allowScriptAccess'
    value='always' />
<param
    name='allowNetworking'
    value='all' />
<param
    name='movie'
    value='http://www.twitch.tv/widgets/live_embed_player.swf' />
<param
    name='flashvars'
    value='hostname=www.twitch.tv&channel={FOO_CHANNEL}&auto_play=false' />
</object>;

值得注意的是,我已经制作了另一个元素,我正在把它建立在成功的基础上。我真的太迷茫了,不知道自己在做什么。。

var ttvbox = document.createElement('div');
$(ttvbox).attr('class', 'abox');
$(ttvbox).attr('id', 'test');
$('#main').append(ttvbox); //inspecting the elements shows it created

如果内部HTML使用单''引号,请使用双""引号。此外,您还可以在jQuery中直接附加HTML。在使用append()之前,不需要创建元素

$( '#main' ).append( "<object> ... html with single 'quotes' ... </object>" );

在这种情况下,您需要引用<object>元素,并使用appendTo()作为

var $object = ( "<object> ... </object>" ).appendTo( $( '#main' ) );